Specifications

SATA-IO Confidential 73
2.18.3. PM-03 : Port Status and Control Register (PSCR) Access
2.18.3.1. Expected Behavior
See sections 16.4.2 and 14.1 of Serial ATA Revision 2.6.
Each device port in a Port Multiplier has a set of PSCRs associated with it. PSCRs are accessed using the READ
PORT MULTIPLIER and WRITE PORT MULTIPLIER commands with the PortNum field in the FIS27h Device field set
to the number of the port (range 0 14). The full range of register numbers addressable through these commands is
0 65535, however most are Reserved and only three are Mandatory. We use the Mandatory registers to verify that
the PSCRs can be accessed.
The mandatory registers are defined identically to SATA SCR[0], [1], and [2] in a SATA HBA.
Table 14 - Mandatory PSCRs
Register Definition Testable Contents
PSCR[0] SStatus
Bits [31:12] reserved, must be zero. Bits
[3:0] DET field, must contain the value 4h
following a Port Multiplier reset, except for
device port 0 on a non-PM aware host
system.
PSCR[1] SError
None in this test. Bits may be set as a
consequence of device activity but the host
cannot set bits, only clear them.
PSCR[2] SControl
Bits [31:20] reserved, must be zero
Bits [19:4] none in this test.
Bits [3:0] DET field, must contain the value
4h following a Port Multiplier reset, except for
device port 0 on a non-PM aware host
system.
Caution:
Some port multipliers contain a SATA Enclosure Management Bridge (SEMB) or that may be included in the count of
exposed device ports in GSCR[2], bits [3:0]. For example, a port multiplier with 4 SATA device ports and 1 SEMB
function could claim 5 ports in GSCR[2], bits [3:0]. Ports 0-3 could be SATA device ports and port 4 could be the
SEMB.
In order to accurately determine the port configuration of a PM, the test must detect an SEMB or. This can be done
by checking SStatus and a signature generated by the device.. There are two possible signatures for an SEMB,
depending on whether an SEP is connected to the SEMB. These signatures are defined in section 13.11.4.1 of the
SATA 2.6 spec. If an SEMB port is identified, that port should not be selected for any of the PM tests defined in this
document.
Power cycle the port multiplier.
Measurement Requirements
For setup consistency, issue Soft Reset to Port F of the port multiplier before starting the test sequence.
Using bits [3:0] of GSCR(2), determine how many device ports the Port Multiplier under test contains. See
note at end of this test description.
Connect a SATA device to one of the implemented device ports with a port number >0. On the selected
device port, write 0001b to the DET field (Bits [3:0]) of PSCR(2), then write 0000b to the same location. This
sequence requests that the port perform an interface communication initialization sequence, then progress to
a PhyRdy state if a working device is attached.
All READ PORT MULTIPLIER and WRITE PORT MULTIPLIER commands complete without error.
Pass/Fail Criteria