Handling I2C Write Defer/Timeout

Zynq UltraScale+ Device Technical Reference Manual (UG1085)

Document ID
UG1085
Release Date
2022-09-15
Revision
2.3 English

The sink controller could issue a defer response for a burst write to I2C. The following are the actions that can be taken by the source controller.

Use the Write status command to poll the transfers happening to the I2C. On successful completion, the sink controller should issue an ACK response to these request while intermediate ones will get a partial ACK.

Issue the same command (previously issued with the same device address, length and data) and wait for response. The sink controller on completion of the write to I2C (after multiple NACK deferments) should respond with an ACK.

Abort the current write using the following.

°Write to a different I2C slave.

°Read command.

°Address only read or write with MOT = 0.