|
@@ -621,7 +621,7 @@ static int i2c_imx_dma_write(struct imx_i2c_struct *i2c_imx,
|
|
|
* Write slave address.
|
|
|
* The first byte must be transmitted by the CPU.
|
|
|
*/
|
|
|
- imx_i2c_write_reg(msgs->addr << 1, i2c_imx, IMX_I2C_I2DR);
|
|
|
+ imx_i2c_write_reg(i2c_8bit_addr_from_msg(msgs), i2c_imx, IMX_I2C_I2DR);
|
|
|
reinit_completion(&i2c_imx->dma->cmd_complete);
|
|
|
time_left = wait_for_completion_timeout(
|
|
|
&i2c_imx->dma->cmd_complete,
|
|
@@ -751,10 +751,10 @@ static int i2c_imx_write(struct imx_i2c_struct *i2c_imx, struct i2c_msg *msgs)
|
|
|
int i, result;
|
|
|
|
|
|
dev_dbg(&i2c_imx->adapter.dev, "<%s> write slave address: addr=0x%x\n",
|
|
|
- __func__, msgs->addr << 1);
|
|
|
+ __func__, i2c_8bit_addr_from_msg(msgs));
|
|
|
|
|
|
/* write slave address */
|
|
|
- imx_i2c_write_reg(msgs->addr << 1, i2c_imx, IMX_I2C_I2DR);
|
|
|
+ imx_i2c_write_reg(i2c_8bit_addr_from_msg(msgs), i2c_imx, IMX_I2C_I2DR);
|
|
|
result = i2c_imx_trx_complete(i2c_imx);
|
|
|
if (result)
|
|
|
return result;
|
|
@@ -787,10 +787,10 @@ static int i2c_imx_read(struct imx_i2c_struct *i2c_imx, struct i2c_msg *msgs, bo
|
|
|
|
|
|
dev_dbg(&i2c_imx->adapter.dev,
|
|
|
"<%s> write slave address: addr=0x%x\n",
|
|
|
- __func__, (msgs->addr << 1) | 0x01);
|
|
|
+ __func__, i2c_8bit_addr_from_msg(msgs));
|
|
|
|
|
|
/* write slave address */
|
|
|
- imx_i2c_write_reg((msgs->addr << 1) | 0x01, i2c_imx, IMX_I2C_I2DR);
|
|
|
+ imx_i2c_write_reg(i2c_8bit_addr_from_msg(msgs), i2c_imx, IMX_I2C_I2DR);
|
|
|
result = i2c_imx_trx_complete(i2c_imx);
|
|
|
if (result)
|
|
|
return result;
|