diff options
author | Jarkko Nikula <jarkko.nikula@linux.intel.com> | 2017-08-09 14:24:44 +0200 |
---|---|---|
committer | Wolfram Sang <wsa@the-dreams.de> | 2017-08-14 21:13:29 +0200 |
commit | 4e2d93de070ceaca5097f7ee5c311731b83208a0 (patch) | |
tree | 62078d5e364e08b825ae829a8dca5c1dafa9a49f | |
parent | i2c: designware: Fix oops from i2c_dw_irq_handler_slave (diff) | |
download | linux-4e2d93de070ceaca5097f7ee5c311731b83208a0.tar.xz linux-4e2d93de070ceaca5097f7ee5c311731b83208a0.zip |
i2c: designware: Fix standard mode speed when configuring the slave mode
Code sets bit DW_IC_CON_SPEED_FAST (0x4) always when configuring the slave
mode. This results incorrect register value DW_IC_CON_SPEED_HIGH (0x6)
when OR'ed together with DW_IC_CON_SPEED_STD (0x2).
Remove this and let the code set the speed mode bits according to clock
frequency or default to fast mode.
Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
-rw-r--r-- | drivers/i2c/busses/i2c-designware-platdrv.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/i2c/busses/i2c-designware-platdrv.c b/drivers/i2c/busses/i2c-designware-platdrv.c index 441afc715a90..57248bccadbc 100644 --- a/drivers/i2c/busses/i2c-designware-platdrv.c +++ b/drivers/i2c/busses/i2c-designware-platdrv.c @@ -198,8 +198,7 @@ static void i2c_dw_configure_slave(struct dw_i2c_dev *dev) dev->functionality = I2C_FUNC_SLAVE | DW_IC_DEFAULT_FUNCTIONALITY; dev->slave_cfg = DW_IC_CON_RX_FIFO_FULL_HLD_CTRL | - DW_IC_CON_RESTART_EN | DW_IC_CON_STOP_DET_IFADDRESSED | - DW_IC_CON_SPEED_FAST; + DW_IC_CON_RESTART_EN | DW_IC_CON_STOP_DET_IFADDRESSED; dev->mode = DW_IC_SLAVE; |