SAS - PL_OC state machine - How many?

Seto, Pak-lung pak-lung.seto at
Wed May 14 11:46:00 PDT 2003

* From the T10 Reflector (t10 at, posted by:
* "Seto, Pak-lung" <pak-lung.seto at>
How many PL_OC state machines per PORT LAYER?

The way that is stated 8.2 of SAS v2g - "There is one PL_OC state machine
per port" - it seems match the state machine description.

What if I have a "chip" that can support multiple links (e.g 4 links) and
wide port configuration.  First, I would assume the "chip" will try to
attempt to make wide port link initialization (in this example - 4 links) by
sending out IDENTIFY frames on all 4 links with the same SAS address.  In
this case, if all the returning IDENTIFY frames has the same SAS address, a
4-links wide port is established - therefore - ONE PL_OC state machine.

What if the returning IDENTIFY frames has all different SAS address and
assume the "chip" will try to re-initialize the link by assing different SAS
addresses to each links (assuming to make config stay in one SAS domain).
After link initializaiton, 4 single link - 4 ports configuration is
established.  In this case - there will be 4 PL_OC state machines with "ONE"
port layer???

Does the standard expect the SAS port layer being implemented in firmware?
Otherwise, how does hardware implemented SAS port layer can dynamically
support various number of PL_OC state machines (not easy)?

In the SAS spec, it does not mention about this kind of situation and how
the PL_OC state machine or port layer handle this situation?  Did I
interpert the PL_OC state machine wrong?


* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at

More information about the T10 mailing list