Specifications

SATA-IO Confidential 85
Connect a drive to device port 0 (drive power can be applied concurrently or beforehand) to the selected device port
numbered >0. Do not initialize the interfaces of these two ports.
Pass/Fail Criteria
1) Read the SError register for device port 0 and verify that bit 26 = 1 (this is the X bit for device port 0). For the
selected device port numbered >0, check that the corresponding bit number in GSCR(32) = 1. (E.g., if the
selected device port is 5, then check bit 5). Verify that bit 26 in the SError register for the device port being
tested = 1.
2) For test step 2, above, verify that the X-bit is cleared in the SError registers of both device ports and that the
GSCR(32) bits corresponding to the two ports = o.
2.18.14. PM-14 : FIS Sent To a Disabled Device Port.
See section 16.3.3.8.2 of Serial ATA Revision 2.6.
2.18.14.1. Expected Behavior
When a port multiplier receives a FIS from the host system directed to a device port that is disabled, it should not
respond with either R_OK or R_ERR. Instead, it should send a SYNC primitive to the host system, terminating the
FIS transfer.
There is no standard way for host software to know that the HBA has received SYNC from the PM. I expect the usual
result will be a command timeout in host software. (Verify this on real hardware.)
Measurement Requirements
For setup consistency, issue Soft Reset to Port F of the port multiplier before starting the test sequence.
Install a SATA analyzer on the link between HBA and port multiplier. Install a drive on one of the device ports and
initialize the interface. Verify that the drive can execute an IDENTIFY DEVICE command correctly.
In addition to performing the tests below through a host system with a SATA HBA, the tests can also be performed by
using a SATA emulator/analyzer in place of the host system and HBA.
1) Disable the interface to the attached drive by writing 4h to the DET field of the SControl register of the port where
the drive is attached. Issue an IDENTIFY DEVICE command to the attached device. Observe whether the command
completes successfully. Capture a trace of the interface activity when the command is issued.
2) Enable the device port to which the test drive is attached. Verify that the drive can execute an IDENTIFY DEVICE
command correctly. Unplug and replug drive power (simulated hot plug). This should set the X bit for this device port
and block FIS transfers to and from the port until the X bit is cleared. Issue an IDENTIFY DEVICE command to the
attached device. Observe whether the command completes successfully after the simulated hot plug. Capture a
trace of the interface activity when the command is issued.
Pass/Fail Criteria
1) Verify that the command did not complete successfully. Verify by examining the interface trace from the
analyzer that the PM responded to the command FIS with one or more SYNC primitives.
2) Verify that the command after the simulated hot plug did not complete successfully. Verify by examining
the interface trace from the analyzer that the PM responded to the command FIS with one or more SYNC
primitives. Read the SError register of the device port and verify that the X bit, bit 26, = 1.
2.18.15. PM-15 : FIS Sent To a Invalid Device Port Address.
See section 16.3.3.8.3 of Serial ATA Revision 2.6.