summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSonic Zhang <sonic.zhang@analog.com>2012-06-05 13:20:06 +0800
committerBob Liu <lliubbo@gmail.com>2012-07-24 13:39:50 +0800
commitf794d7ba884ffdde063273a97045a6b8d05aa94c (patch)
tree7d2b4f7a5bcf25f589166426f8c1000b751fed4b
parent335dd559b5c870b4ca3111b46f3358389c1ead3b (diff)
downloadop-kernel-dev-f794d7ba884ffdde063273a97045a6b8d05aa94c.zip
op-kernel-dev-f794d7ba884ffdde063273a97045a6b8d05aa94c.tar.gz
i2c: i2c-bfin-twi: Always access 16 bit MMR by bfin 16 bit access Macro.
Otherwise, the compiler may optimize assemble code into 8bit access instruction when target register is 8 bit width. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bob Liu <lliubbo@gmail.com>
-rw-r--r--arch/blackfin/include/asm/bfin_twi.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/blackfin/include/asm/bfin_twi.h b/arch/blackfin/include/asm/bfin_twi.h
index 2f3339a..e3b40e2 100644
--- a/arch/blackfin/include/asm/bfin_twi.h
+++ b/arch/blackfin/include/asm/bfin_twi.h
@@ -66,9 +66,9 @@ struct bfin_twi_iface {
#define DEFINE_TWI_REG(reg_name, reg) \
static inline u16 read_##reg_name(struct bfin_twi_iface *iface) \
- { return iface->regs_base->reg; } \
+ { return bfin_read16(&iface->regs_base->reg); } \
static inline void write_##reg_name(struct bfin_twi_iface *iface, u16 v) \
- { iface->regs_base->reg = v; }
+ { bfin_write16(&iface->regs_base->reg, v); }
DEFINE_TWI_REG(CLKDIV, clkdiv)
DEFINE_TWI_REG(CONTROL, control)
OpenPOWER on IntegriCloud