Main

8.1i EDK Sp2 - The iic_v1_01_d IIC master driver produces an extra ack when reading 16 bytes

AR# 23232

Search For Another Answer

Topic IP-Processor
Last Updated 04/11/2006
Status Active
Description

Keywords: software driver, OPB IIC, OPB_IIC, XIic_MasterRecv, Processor IP,

When reading 16 bytes from an I2C device, the device driver (xiic_master.c in the function XIic_MasterRecv) acknowledges the last byte instead of ignoring the last byte (so the target can release the bus). Consequently, the slave device continues to hold down the SDA line because it is expecting to transmit more data; which causes the bus to be locked.

Solution

This problem has been fixed in the latest EDK 8.1i Service Pack, available at:
http://www.xilinx.com/xlnx/xil_sw_updates_home.jsp
The first service pack containing the fix is EDK 8.1i Service Pack 2.
 
 
/csi/footer.htm