mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 17:08:10 +00:00
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>
This commit is contained in:
parent
335dd559b5
commit
f794d7ba88
1 changed files with 2 additions and 2 deletions
|
@ -66,9 +66,9 @@ struct bfin_twi_iface {
|
||||||
|
|
||||||
#define DEFINE_TWI_REG(reg_name, reg) \
|
#define DEFINE_TWI_REG(reg_name, reg) \
|
||||||
static inline u16 read_##reg_name(struct bfin_twi_iface *iface) \
|
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) \
|
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(CLKDIV, clkdiv)
|
||||||
DEFINE_TWI_REG(CONTROL, control)
|
DEFINE_TWI_REG(CONTROL, control)
|
||||||
|
|
Loading…
Reference in a new issue