This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM5728: SATA PHY communication not established after initialization

Part Number: AM5728

Our customer has not solved the issue discussed in the related threads that SATA controller not detects an attached drive. They applied the workarounds for SATA errata(i783, i807, i808, i809, i818) to their software then the issue has decreased in incidence but remains.

On their system, SATA initialization is done twice, at bootloader and OS startup. PHY is not initialized at OS startup. The issue occurs in both initializations. When the issue occurs, PxSSTS.DET does not become 0x3 but remains 0x1 and PHY communication is not established. After the problem occurs, Port Reset (COMRESET) or HBA Reset is performed to reinitialize the MAC, but the issue may occur again. After many reinitializations, PHY communication may be established.

Attach the ZIP file containing the images of packets captured by a protocol analyzer. Link_OK.png is capture of the packets when a Link succeeds, and Link_NG.png is capture of the packets when a Link fails. In each image, the left side is when SSD (3Gbps) is connected, and the right side is when NAND controller (1.5Gbps) implemented on their board is connected.

Link Negotiation.zip

After a link fails, the link cannot succeed until MAC is reset and reinitialized. It is expected that the link will be established without reinitialization.

Is there anything strange about the captured packets?

Are there any items that should be checked to resolve the issue?

I will suggest to our customer to check the power and clock related to SATA at startup.

Best regards,

Daisuke