Commit 9d58f302 authored by Ralf Baechle's avatar Ralf Baechle
Browse files

Glue again after removal of BUILD_BUG().

parent 495515b3
Loading
Loading
Loading
Loading
+32 −25
Original line number Diff line number Diff line
@@ -387,11 +387,11 @@ static inline void pfx##out##bwlq##p(type val, unsigned long port) \
									\
	__val = pfx##ioswab##bwlq(val);					\
									\
	if (sizeof(type) != sizeof(u64)) {				\
	/* Really, we want this to be atomic */				\
	BUILD_BUG_ON(sizeof(type) > sizeof(unsigned long));		\
									\
	*__addr = __val;						\
	slow;								\
	} else								\
		BUILD_BUG();						\
}									\
									\
static inline type pfx##in##bwlq##p(unsigned long port)			\
@@ -402,13 +402,10 @@ static inline type pfx##in##bwlq##p(unsigned long port) \
	port = __swizzle_addr_##bwlq(port);				\
	__addr = (void *)(mips_io_port_base + port);			\
									\
	if (sizeof(type) != sizeof(u64)) {				\
	BUILD_BUG_ON(sizeof(type) > sizeof(unsigned long));		\
									\
	__val = *__addr;						\
	slow;								\
	} else {							\
		__val = 0;						\
		BUILD_BUG();						\
	}								\
									\
	return pfx##ioswab##bwlq(__val);				\
}
@@ -417,28 +414,36 @@ static inline type pfx##in##bwlq##p(unsigned long port) \
									\
__BUILD_MEMORY_SINGLE(bus, bwlq, type, 1)

#define __BUILD_IOPORT_PFX(bus, bwlq, type)				\
									\
__BUILD_IOPORT_SINGLE(bus, bwlq, type, ,)				\
__BUILD_IOPORT_SINGLE(bus, bwlq, type, _p, SLOW_DOWN_IO)

#define BUILDIO(bwlq, type)						\
#define BUILDIO_MEM(bwlq, type)						\
									\
__BUILD_MEMORY_PFX(__raw_, bwlq, type)					\
__BUILD_MEMORY_PFX(, bwlq, type)					\
__BUILD_MEMORY_PFX(mem_, bwlq, type)					\

BUILDIO_MEM(b, u8)
BUILDIO_MEM(w, u16)
BUILDIO_MEM(l, u32)
BUILDIO_MEM(q, u64)

#define __BUILD_IOPORT_PFX(bus, bwlq, type)				\
	__BUILD_IOPORT_SINGLE(bus, bwlq, type, ,)			\
	__BUILD_IOPORT_SINGLE(bus, bwlq, type, _p, SLOW_DOWN_IO)

#define BUILDIO_IOPORT(bwlq, type)					\
	__BUILD_IOPORT_PFX(, bwlq, type)				\
	__BUILD_IOPORT_PFX(mem_, bwlq, type)

BUILDIO_IOPORT(b, u8)
BUILDIO_IOPORT(w, u16)
BUILDIO_IOPORT(l, u32)
#ifdef CONFIG_64BIT
BUILDIO_IOPORT(q, u64)
#endif

#define __BUILDIO(bwlq, type)						\
									\
__BUILD_MEMORY_SINGLE(____raw_, bwlq, type, 0)

BUILDIO(b, u8)
BUILDIO(w, u16)
BUILDIO(l, u32)
BUILDIO(q, u64)

__BUILDIO(q, u64)

#define readb_relaxed			readb
@@ -508,7 +513,9 @@ __BUILD_IOPORT_STRING(bwlq, type)
BUILDSTRING(b, u8)
BUILDSTRING(w, u16)
BUILDSTRING(l, u32)
#ifdef CONFIG_64BIT
BUILDSTRING(q, u64)
#endif


/* Depends on MIPS II instruction set */