LS1043A-process about I2C bus Arbitration Lost

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

LS1043A-process about I2C bus Arbitration Lost

960件の閲覧回数
qingshanli
Contributor I

In linux i2c driver i2c-imx.c:

if(temp & I2SR_IAL) {

    temp &= ~I2SR_IAL;

    imx_i2c_write_reg(temp, i2c_imx, IMX_I2C_I2SR);

    return -EAGAIN;

}

Here if I2SR_IAL be 1, driver will write zero to clear it.

But in <QorIQ LS1043A Reference Manual> chapter 24.5.6, there have a line to descript IBAL: This bit must be cleared by software, by writing a one  to it. A write of zero has no effect.

So there is different desc about how to clear arbitration lost status in the driver code and reference manual. Which one is right?

0 件の賞賛
返信
1 返信

791件の閲覧回数
alexander_yakov
NXP Employee
NXP Employee

Sorry for delayed response.

The code is correct for i.MX processors, but not correct for LSxxxx processors.

This question is already asked, please look for example this link:

https://community.nxp.com/thread/446887


Have a great day,
Alexander
TIC

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------