SPRUI30H November 2015 – May 2024 DRA745 , DRA746 , DRA750 , DRA756
The PM port command servicing order depends on the type of commands in the CL:
When processing commands that are non-queued, the HBA executes each command entry in its entirety before moving to the next entry in the command list. The next entry can include a command to a different PM device port. Because the HBA operates in the order of its command list, system software must not fill the list in sequential order with commands to a single device; otherwise, another device might get starved. For more information, see the AHCI standard specification.
Because the SATA controller supports command-based switching only, system software must only add NCQ commands to the command list that target a single port behind the PM, wait for the commands to finish (SATA_PxSACT bits all cleared), and then add commands for a different port. For more information, see the AHCI standard specification.