[U-Boot] [PATCH 01/24] mxc_i2c: fix i2c_imx_stop

Troy Kisky
2012-06-22T04:11:56Z

Instead of clearing 2 bits, all the other
bits were set because '|=' was used instead
of '&='.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
---
drivers/i2c/mxc_i2c.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Note:

All patches in the series are based on the i2c/master branch
even though only 1-18 will be applied there.

diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c
index fc68062..c0c45fd 100644
--- a/drivers/i2c/mxc_i2c.c
+++ b/drivers/i2c/mxc_i2c.c
@@ -264,7 +264,7 @@ void i2c_imx_stop(void)

/* Stop I2C transaction */
temp = readb(&i2c_regs->i2cr);
- temp |= ~(I2CR_MSTA | I2CR_MTX);
+ temp &= ~(I2CR_MSTA | I2CR_MTX);
writeb(temp, &i2c_regs->i2cr);

i2c_imx_bus_busy(0);
--
1.7.9.5