From: Dmitry Bazhenov dmitry.bazhenov@auriga.com
The set SCL recovery function unconditionally pulls the SCL line low. Only pull SCL line low according to val parameter.
Signed-off-by: Dmitry Bazhenov dmitry.bazhenov@auriga.com Signed-off-by: Jan Glauber jglauber@cavium.com [Changed commit message] Signed-off-by: Wolfram Sang wsa@the-dreams.de
(cherry picked from commit e7051556b63dac163a82db6e6f324196c0c81e5b) Signed-off-by: Vadim Lomovtsev Vadim.Lomovtsev@caviumnetworks.com --- drivers/i2c/busses/i2c-octeon-core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/i2c/busses/i2c-octeon-core.c b/drivers/i2c/busses/i2c-octeon-core.c index f45ea5e..f322242 100644 --- a/drivers/i2c/busses/i2c-octeon-core.c +++ b/drivers/i2c/busses/i2c-octeon-core.c @@ -767,7 +767,7 @@ static void octeon_i2c_set_scl(struct i2c_adapter *adap, int val) { struct octeon_i2c *i2c = i2c_get_adapdata(adap);
- octeon_i2c_write_int(i2c, TWSI_INT_SCL_OVR); + octeon_i2c_write_int(i2c, val ? 0 : TWSI_INT_SCL_OVR); }
static int octeon_i2c_get_sda(struct i2c_adapter *adap)