SAS: Notify primitive issues

George Penokie gop at us.ibm.com
Tue Jun 24 13:48:14 PDT 2003


* From the T10 Reflector (t10 at t10.org), posted by:
* George Penokie <gop at us.ibm.com>
*
This is a multipart message in MIME format.
--=_alternative 007214DB86256D4F_=
Content-Type: text/plain; charset="us-ascii"


The following are all issues relating to the NOTIFY primitive that need
to be addressed in either SAS or SAS 1.1. My preference is SAS since it
is going to have to go  through another public review. 

1-SAS currently has no statement or requirement for a target to detect
the Notify primitive. This could lead to inoperability problems if the
device sending the Notify assumes the target will detect every Notify
transmitted. It is impossible to guarantee the detection of a single
primitive as it could be morphed in transmission causing a disparity
error. 
I would recommend  the following be placed in section 7.2.5.9 NOTIFY: 

SAS initiator devices and expander devices shall not assume that a SAS
target device detects every transmitted NOTIFY.

2-Section 10.2.8.1.7.2 Transition SA_PC_5:Active_Wait to SA_PC_1:Active
should be changed from: 

This transition shall occur if: 

a) a NOTIFY (ENABLE SPINUP) is received; or 
b) the SAS device does not consume additional power as a result of the
transition to SA_PC_1:Active. 

to: 

This transition shall occur if: 

a) a NOTIFY (ENABLE SPINUP) is detected; or 
b) the SAS device does not consume additional power as a result of the
transition to SA_PC_1:Active. 

3-Section 10.2.8.1.7.5 Transition SA_PC_5:Active_Wait to
SA_PC_6:Idle_Wait should be changed from 

This transition shall occur if: 
a) a START STOP UNIT command with the POWER CONDITION field set to IDLE
is received; 
b) a START STOP UNIT command with the POWER CONDITION field set to
FORCE_IDLE_0 is received; or 
c) the Power Condition mode page idle condition timer expires. 
For transitions based on a START STOP UNIT command, the command shall
not complete with GOOD status until this state machine reaches the
SA_PC_2:Idle state. 

to: 

This transition shall occur if: 
a) a START STOP UNIT command with the POWER CONDITION field set to IDLE
is received; 
b) a START STOP UNIT command with the POWER CONDITION field set to
FORCE_IDLE_0 is received; or 
c) the Power Condition mode page idle condition timer expires. 
For transitions based on a START STOP UNIT command, if the IMMED bit is
set to zero the command shall not complete with GOOD status until this
state machine reaches the SA_PC_2:Idle state. For transitions based on a
START STOP UNIT command, if the IMMED bit is set to one the command may
complete with GOOD status before this state machine reaches the
SA_PC_2:Idle state. 

4-Section 7.2.5.9 NOTIFY the statement: 

A specific NOTIFY shall not be transmitted a second time until at least
three ALIGNs or different NOTIFYs have been transmitted. 

Allows NOTIFYs to completely replace aligns. This is OK as long as the
same NOTIFY is not the only NOTIFY being transmitted. To prevent this
the wording should be changed to: 

A specific NOTIFY shall not be transmitted a second time until at least
three ALIGNs or three different NOTIFYs have been transmitted. 



Bye for now,
George Penokie

Dept 2C6  114-2 N212
E-Mail:    gop at us.ibm.com
Internal:  553-5208
External: 507-253-5208   FAX: 507-253-2880



--=_alternative 007214DB86256D4F_=
Content-Type: text/html; charset="us-ascii"


<br><font size=2 face="sans-serif">The following are all issues relating to the NOTIFY primitive that need to be addressed in either SAS or SAS 1.1. My preference is SAS since it is going to have to go &nbsp;through another public review.</font>
<br>
<br><font size=2 face="sans-serif">1-SAS currently has no statement or requirement for a target to detect the Notify primitive. This could lead to inoperability problems if the device sending the Notify assumes the target will detect every Notify transmitted. It is impossible to guarantee the detection of a single primitive as it could be morphed in transmission causing a disparity error. </font>
<br><font size=2 face="sans-serif">I would recommend &nbsp;the following be placed in section 7.2.5.9 NOTIFY:</font>
<br>
<br><font size=2 face="sans-serif">SAS initiator devices and expander devices shall not assume that a SAS target device detects every transmitted NOTIFY.<br>
<br>
2-Section 10.2.8.1.7.2 Transition SA_PC_5:Active_Wait to SA_PC_1:Active should be changed from:</font>
<br>
<br><font size=2 face="sans-serif">This transition shall occur if:</font>
<br>
<br><font size=2 face="sans-serif">a) a NOTIFY (ENABLE SPINUP) is received; or</font>
<br><font size=2 face="sans-serif">b) the SAS device does not consume additional power as a result of the transition to SA_PC_1:Active.</font>
<br>
<br><font size=2 face="sans-serif">to:</font>
<br>
<br><font size=2 face="sans-serif">This transition shall occur if:</font>
<br>
<br><font size=2 face="sans-serif">a) a NOTIFY (ENABLE SPINUP) is detected; or</font>
<br><font size=2 face="sans-serif">b) the SAS device does not consume additional power as a result of the transition to SA_PC_1:Active.</font>
<br>
<br><font size=2 face="sans-serif">3-Section 10.2.8.1.7.5 Transition SA_PC_5:Active_Wait to SA_PC_6:Idle_Wait should be changed from</font>
<br>
<br><font size=2 face="sans-serif">This transition shall occur if:</font>
<br><font size=2 face="sans-serif">a) a START STOP UNIT command with the POWER CONDITION field set to IDLE is received;</font>
<br><font size=2 face="sans-serif">b) a START STOP UNIT command with the POWER CONDITION field set to FORCE_IDLE_0 is received; or</font>
<br><font size=2 face="sans-serif">c) the Power Condition mode page idle condition timer expires.</font>
<br><font size=2 face="sans-serif">For transitions based on a START STOP UNIT command, the command shall not complete with GOOD status until this state machine reaches the SA_PC_2:Idle state.</font>
<br>
<br><font size=2 face="sans-serif">to:</font>
<br>
<br><font size=2 face="sans-serif">This transition shall occur if:</font>
<br><font size=2 face="sans-serif">a) a START STOP UNIT command with the POWER CONDITION field set to IDLE is received;</font>
<br><font size=2 face="sans-serif">b) a START STOP UNIT command with the POWER CONDITION field set to FORCE_IDLE_0 is received; or</font>
<br><font size=2 face="sans-serif">c) the Power Condition mode page idle condition timer expires.</font>
<br><font size=2 face="sans-serif">For transitions based on a START STOP UNIT command, if the IMMED bit is set to zero the command shall not complete with GOOD status until this state machine reaches the SA_PC_2:Idle state. For transitions based on a START STOP UNIT command, if the IMMED bit is set to one the command may complete with GOOD status before this state machine reaches the SA_PC_2:Idle state.</font>
<br>
<br><font size=2 face="sans-serif">4-Section 7.2.5.9 NOTIFY the statement: </font>
<br>
<br><font size=2 face="sans-serif">A specific NOTIFY shall not be transmitted a second time until at least three ALIGNs or different NOTIFYs have been transmitted. </font>
<br>
<br><font size=2 face="sans-serif">Allows NOTIFYs to completely replace aligns. This is OK as long as the same NOTIFY is not the only NOTIFY being transmitted. To prevent this the wording should be changed to:</font>
<br>
<br><font size=2 face="sans-serif">A specific NOTIFY shall not be transmitted a second time until at least three ALIGNs or three different NOTIFYs have been transmitted. </font>
<br>
<br>
<br>
<br><font size=2 face="sans-serif">Bye for now,<br>
George Penokie<br>
<br>
Dept 2C6 &nbsp;114-2 N212<br>
E-Mail: &nbsp; &nbsp;gop at us.ibm.com<br>
Internal: &nbsp;553-5208<br>
External: 507-253-5208 &nbsp; FAX: 507-253-2880<br>
<br>
</font>
--=_alternative 007214DB86256D4F_=--




More information about the T10 mailing list