blackfin: io: define __raw_readx/writex with bfin_readx/writex
Signed-off-by: Steven Miao <realmz6@gmail.com>
This commit is contained in:
parent
b3df664b85
commit
1a3372bc52
|
@ -11,27 +11,12 @@
|
|||
#include <linux/types.h>
|
||||
#include <asm/byteorder.h>
|
||||
|
||||
#define DECLARE_BFIN_RAW_READX(size, type, asm, asm_sign) \
|
||||
static inline type __raw_read##size(const volatile void __iomem *addr) \
|
||||
{ \
|
||||
unsigned int val; \
|
||||
int tmp; \
|
||||
__asm__ __volatile__ ( \
|
||||
"cli %1;" \
|
||||
"NOP; NOP; SSYNC;" \
|
||||
"%0 = "#asm" [%2] "#asm_sign";" \
|
||||
"sti %1;" \
|
||||
: "=d"(val), "=d"(tmp) \
|
||||
: "a"(addr) \
|
||||
); \
|
||||
return (type) val; \
|
||||
}
|
||||
DECLARE_BFIN_RAW_READX(b, u8, b, (z))
|
||||
#define __raw_readb __raw_readb
|
||||
DECLARE_BFIN_RAW_READX(w, u16, w, (z))
|
||||
#define __raw_readw __raw_readw
|
||||
DECLARE_BFIN_RAW_READX(l, u32, , )
|
||||
#define __raw_readl __raw_readl
|
||||
#define __raw_readb bfin_read8
|
||||
#define __raw_readw bfin_read16
|
||||
#define __raw_readl bfin_read32
|
||||
#define __raw_writeb(val, addr) bfin_write8(addr, val)
|
||||
#define __raw_writew(val, addr) bfin_write16(addr, val)
|
||||
#define __raw_writel(val, addr) bfin_write32(addr, val)
|
||||
|
||||
extern void outsb(unsigned long port, const void *addr, unsigned long count);
|
||||
extern void outsw(unsigned long port, const void *addr, unsigned long count);
|
||||
|
|
Loading…
Reference in New Issue