Tool/software:
Hi champs,
I am asking this for our customer.
The user uses I2C as target mode to implement PMBus 1.2.
When the I2C SCL is held low abnormally, how does the user know and then reset I2C module?
For example, the host I2C hangs and keeps held SCL low and then resets itself, but it seems MSPM0G3507 I2C target would be stuck and keep waiting because SCL is low.
Ideally, MSPM0G3507 should reset I2C module while the host I2C is resetting itself.
Is there any register for the user to check SCL status and then reset I2C module if SCL keeps low and exceeds some time?
We are aware of
18.2.3.6 SCL Clock Low Timeout
TIMEOUTA
but still confused if and how to use it to handle this.
If TIMEOUTA can be used for this purpose, do we have an example code?