SPRZ397K November 2012 – September 2024 TDA2EG-17 , TDA2HF , TDA2HG , TDA2HV , TDA2LF , TDA2SA , TDA2SG , TDA2SX
SATA Host Controller Locks Up if PIO Setup FIS Is Received and Bus Busy and Data Request Bits Are Cleared
Low
A bug in the SATA core is integrated into the SATA controller.
The host fails to proceed when receiving a D2H PIO setup FIS with bus busy (BSY) and data request (DRQ) bits cleared.
When the three following events occur simultaneously, the host controller fails to proceed and locks up:
The bug is due to a state-machine in the SATA core that is not well implemented for this scenario.
A reset is required to continue communication between the host and the device.
From a user point of view, the impact can be some latency that is seen while proceeding.
Implement a software time-out for locks and then issue one of the followoing two resets, first the least intrusive and/or more intrusive if it does not solve the lock.
Least intrusive, software reset:
More intrusive, Port reset (or COMRESET):
SR 2.0, 1.1, 1.0
TDA2x: 2.0, 1.1, 1.0
DRA75x, DRA74x: 2.0, 1.1, 1.0
AM572x: 2.0, 1.1