SDA Commands and Mode Pages (94-042r3)

George Penokie GOP at rchvmp3.vnet.ibm.com
Fri Apr 8 08:50:13 PDT 1994


   Date:  Mar 16 ,1994                       X3T10/94-042 rev 3


   To:  X3T9.2 Committee (SCSI)

   From:  George Penokie (IBM)

   Subject:  SDA Commands and Mode Pages

   1.0 Overview

   To control and configure a SCSI-3 Disk Array several new
   commands and mode pages are required.  This proposal defines
   those commands and mode pages.  All the listed commands and
   mode pages are only valid for the Base Device Address (P-LUI
   LUN zero) on SDA device types.

   An Inquiry command addressed to a volume set shall indicate
   a Peripheral device type equivalent to the devices that makeup
   the volume set (e.g. direct-access device, sequential-access
   device, etc.).

   <<Editors Note:  A bit will be added to the Standard Inquiry
   data format to indicate the LUN is a Volume Set.  The name of
   the bit should be SDAVol.  The following text should be added
   to the Inquiry command description:

   A SDA Volume Set Addressed (SDAVol) bit of one indicates the
   addressed device is a volume set that is configured within a
   SDA device.  GOP>>

   <<Editors Note:  This pass only contains an outline of the
   commands and mode pages GOP>>

   2.0 Extents

   2.1 P-extent

   All P-extents contain the following information:

   -Physical Logical Unit Identifier (P-LUI)  2 bytes
   -Start P-LBA                               4 bytes
   -Number of P-LBAs                          4 bytes
   -Number of Bytes per P-LBA                 2 bytes

   Note:For variable block length device types the number of
   bytes per P-LBA field shall be set to zero.

   2.2  PS-extent

   All PS-extents contain the following information:

   -Physical Logical Unit Identifier (P-LUI)  2 bytes
   -Start PS-LBA                              4 bytes
   -Number of PS-LBAs                         4 bytes
   -Number of Bytes per PS-LBA                2 bytes

   Note:For variable block length device types the number of
   bytes per P-LBA field shall be set to zero.

   3.0  Maintenance Operations

   3.1  Report P-LUI Command

   The CDB would contain the following:

   -Report all or Selected P-LUIs                    (S) 1 bit
   -Physical Logical Unit Identifier (P-LUI)         (S) 2 bytes

   This command would return the following parameter list:

   -Physical Logical Unit Identifier      (P-LUI) (R)   2 bytes
   -Peripheral Device Type                (1 per P-LUI) 1 byte
   -Replaceable Unit                      (1 per P-LUI) 1 bit
   -State of the P-LUI                    (1 per P-LUI) 1 byte

   Note:Any parameters indicated by a (R) may be repeated.  Any
   parameters indicated by a (S) shall only occur once per
   service request.

   3.2 Attach C-LUI Command

   This command would send the following parameter list:

   -Component Logical Unit Identifier (C-LUI)        (S) 2 bytes
   -Attached R-LUI                                   (R) 2 bytes
   -Attached P-LUI                                   (R) 2 bytes
   -Attached C-LUI                                   (R) 2 bytes

   Note:Any parameters indicated by a (R) may be repeated.  Any
   parameters indicated by a (S) shall only occur once per
   service request.

   3.3 Report C-LUI Command

   The CDB would contain the following:

   -Report all or Selected C-LUIs                    (S) 1 bit
   -Component Logical Unit Identifier (C-LUI)        (S) 2 bytes

   This command would return the following parameter list:

   -Component Logical Unit Identifier (C-LUI)       (R)           2 bytes
   -Component Type                                  (1 per C-LUI) 1 byte
   -Replaceable Unit                                (1 per C-LUI) 1 bit
   -State of the C-LUI                              (1 per C-LUI) 1 byte
 |
   Note:Any parameters indicated by a (R) may be repeated.  Any
   parameters indicated by a (S) shall only occur once per
   service request.

   3.4  Report P-LUI/C-LUI Identifier Command

   The CDB would contain the following:

   -Report P-LUI or C-LUI Identifier                 (S) 1 bit
   -Logical Unit Identifier          (P-LUI or C-LUI)(S) 2 bytes

   This command would return the following parameter list:

   -Identifier                             Variable

   3.5  Set P-LUI/C-LUI Identifier Command

   The CDB would contain the following:

   -Set P-LUI or C-LUI Identifier                    (S) 1 bit
   -Logical Unit Identifier          (P-LUI or C-LUI)(S) 2 bytes

   This command would send the following parameter list:

   -Identifier                             Variable

   3.6  Report P-Extent Command

   The CDB would contain the following:

   -Report all or Selected P-extents                 (S) 1 bit
   -Physical Logical Unit Identifier (P-LUI)         (S) 2 bytes
   -Report assigned/unassigned P-Extents             (S) 1 bit

   This command would return the following parameter list:

   -P-extent                          (R)              12 bytes
   -Peripheral Device Type            (1 per P-extent)  1 byte
   -State of the P-extent             (1 per P-extent)  1 byte

 | 3.7  Report P-LUI Associations Service

 | The CDB would contain the following:

 | -Report all or Selected P-LUIs                    (S) 1 bit
 | -Physical Logical Unit Identifier (P-LUI)         (S) 2 Bytes

 | This command would return the following parameter list:

 | -Physical Logical Unit Identifier (P-LUI)        (R)           2 bytes
 | -Associated V-LUI                                (x per P-LUI) 2 bytes
 | -Associated R-LUI                                (x per P-LUI) 2 bytes
 | -Associated S-LUI                                (x per P-LUI) 2 bytes


 | 3.8  Report C-LUI Attachments Service

 | The CDB would contain the following:

 | -Report all or Selected C-LUIs                    (S) 1 bit
 | -Component Logical Unit Identifier (C-LUI)        (S) 2 bytes

 | This command would return the following parameter list:

 | -Component Logical Unit Identifier (C-LUI)       (R)           2 bytes
 | -Redundancy Group Logical Unit Identifier (R-LUI)(x per C-LUI) 2 bytes
 | -Attached P-LUI                                  (x per C-LUI) 2 bytes
 | -Attached C-LUI                                  (x per C-LUI) 2 bytes

   3.9  Exchange P-LUI/C-LUI Command (Immediate bit in CDB)

   The CDB would contain the following:

   -Select P-LUI or C-LUI for Exchange         (S)  1 bit
   -Old P-LUI or C-LUI                         (S)  2 bytes
   -New P-LUI or C-LUI                         (S)  2 bytes

   3.10  Remove P-LUI/C-LUI Command

   The CDB would contain the following:

   -Select P-LUI or C-LUI to Remove            (S)  1 bit
   -P-LUI or C-LUI                             (S)  2 bytes

   3.11  Add P-LUI/C-LUI Command

   The CDB would contain the following:

   -Select P-LUI or C-LUI for Add              (S)  1 bit
   -P-LUI or C-LUI                             (S)  2 bytes

   3.12  Exchange P-extent Command (Immediate bit in CDB)

   This command would send the following parameter list:

   -Old P-extent                      (S)  12 bytes
   -New P-extent                      (S)  12 bytes

   3.13  Set Method of Reporting Informational Exception
   Conditions Mode Page

   A SDA mode page would contain the following:

   -Method of Reporting Informational Exceptions   (S) 1 byte
   -Log Informational Exceptions                   (S) 1 bit

   4.0 Redundancy Group Operations

   4.1  Create/Modify Redundancy Group Command (Immediate bit in CDB)

   This command would send the following parameter list:

   -Redundancy Group Logical Unit Identifier (R-LUI)      (S) 2 bytes
   -Recalculate check data                                (S) 2 bits
   -Granularity of Units (bit, byte, logical block, etc.) (S) 1 byte
   -P-Extent                                              (R) 12 bytes
   -Preserve protected space                 (1 per P-extent) 2 bits
   -Set protected space to known value       (1 per P-extent) 9 bits
   -Redundancy Type Identifier               (1 per P-extent) 1 byte
   -Start check data interleave P-LBA        (1 per P-extent) 4 bytes
   -Number of units of check data            (1 per P-extent) 4 bytes
   -Number of units of user data             (1 per P-extent) 4 bytes

   4.2  Report Redundancy Groups Command

   The CDB would contain the following:

   -Report all R-LUIs (Yes/No)                       (S) 1 bit
   -Redundancy Group Logical Unit Identifier (R-LUI) (S) 2 bytes

   This command would return the following parameter list:

   -Redundancy Group Logical Unit Identifier (R-LUI)      (R) 2 bytes
   -Redundancy Type Identifier                  (1 per R-LUI) 1 byte
   -Granularity of Units (bit, byte, etc.)      (1 per R-LUI) 1 byte
   -State of the Redundancy Group               (1 per R-LUI) 1 byte
   -P-Extent                                    (x per R-LUI) 12 bytes
   -Start Check Data Interleave P-LBA        (1 per P-extent) 4 bytes
   -Number of units of check data            (1 per P-extent) 4 bytes
   -Number of units of user data             (1 per P-extent) 4 bytes

   4.3  Report Unassigned Redundancy Group Space Command

   The CDB would contain the following:

   -Report all unassigned R-LUIs (Yes/No)            (S) 1 bit
   -Redundancy Group Logical Unit Identifier (R-LUI) (S) 2 bytes

   This command would return the following parameter list:

   -Redundancy Group Logical Unit Identifier (R-LUI)      (R) 2 bytes
   -Redundancy Type Identifier                  (1 per R-LUI) 1 byte
   -State of the Redundancy Group               (1 per R-LUI) 1 byte
   -PS-extent                                   (x per R-LUI) 12 bytes

   4.4  Delete Redundancy Group Command

   The CDB would contain the following:

   -Redundancy Group Logical Unit Identifier (R-LUI) (S) 2 bytes

   4.5 Recalculate Check Data Command (Immediate bit in CDB)

   The CDB would contain the following:

   -Redundancy Group Logical Unit Identifier (R-LUI) (S) 2 bytes

   4.6  Verify Check Data Command (Immediate bit in CDB)

   The CDB would contain the following:

   -Redundancy Group Logical Unit Identifier (R-LUI) (S) 2 bytes

   4.6.1  Verify Check Data Mode Page

   A SDA mode page would contain the following:

   -Enable/Disable Continuous Verification           (S) 1 bit

   4.7  Control Generation of Check Data Mode Page

   A SDA mode page would contain the following:

   -Redundancy Group Logical Unit Identifier (R-LUI) (S)  2 bytes
   -Enable/Disable Check Data                        (S)  1 bit

   4.8  Rebuild P-extent Command (Immediate bit in CDB)

   This command would send the following parameter list:

   -P-extent                                         (S) 12 bytes
   -Redundancy Group Logical Unit Identifier (R-LUI) (R) 2 bytes

   4.9  Rebuild P-LUI Command (Immediate bit in CDB)

   This command would send the following parameter list:

   -P-LUI                                            (S) 2 bytes
   -Redundancy Group Logical Unit Identifier (R-LUI) (R) 2 bytes

   5.0  Volume Set Operations

   5.1  Create/Modify Volume Set Command (Immediate bit in CDB)

   This command would send the following parameter list:

   -Volume Set Logical Unit Identifier (V-LUI)            (S) 2 bytes
   -PS-extent Stripe Length                               (S) 4 bytes
   -PS-extent Interleave Depth                            (S) 4 bytes
   -Granularity of Units (bit, byte, logical block, etc.) (S) 1 byte
   -PS-extent                                             (R) 12 bytes
   -User Data Stripe Depth                  (1 per PS-extent) 4 bytes
   -Increment/Decrement PS-LBA Count        (1 per PS-extent) 4 bytes

   5.2  Report Volume Sets Command

   The CDB would contain the following:

   -Report all V-LUIs (Yes/No)                 (S) 1 bit
   -Volume Set Logical Unit Identifier (V-LUI) (S) 2 bytes

   This command would return the following parameter list:

   -Volume Set Logical Unit Identifier (V-LUI)            (R) 2 bytes
   -PS-extent Stripe Length                     (1 per V-LUI) 4 bytes
   -PS-extent Interleave Depth                  (1 per V-LUI) 4 bytes
   -Granularity of Units (bit, byte, etc.)      (1 per V-LUI) 1 byte
   -State of the Volume Set                     (1 per V-LUI) 1 byte
   -PS-extent                                   (x per V-LUI) 12 bytes
   -User Data Stripe Depth                  (1 per PS-extent) 4 byte
   -Increment/Decrement PS-LBA Count        (1 per PS-extent) 1 bit

   5.3  Delete Volume Set Command

   The CDB would contain the following:

   -Volume Set Logical Unit Identifier (V-LUI)  (S) 2 bytes

   5.4  Recalculate V-LUI Check Data Command (Immediate bit in
   CDB)

   The CDB would contain the following:

   -Volume Set Logical Unit Identifier (V-LUI)  (S) 2 bytes

   This command would send the following parameter list:

   -Start V-LBA                                 (S) 4 bytes
   -Number of V-LBAs                            (S) 4 bytes

   5.5  Verify V-LBA Check Data Command (Immediate bit in CDB)

   The CDB would contain the following:

   -Volume Set Logical Unit Identifier (V-LUI)       (S) 2 bytes

   This command would send the following parameter list:

   -Start V-LBA                                      (S) 4 bytes
   -Number of V-LBAs                                 (S) 4 bytes

   5.5.1  Verify Check Data Mode Page (Immediate bit in CDB)

   A SDA mode page would contain the following:

   -Enable/Disable Continuous Verification           (S) 1 bit

   5.6  Control Generation of Check Data Mode Page

   A SDA mode page would contain the following:

   -Volume Set Logical Unit Identifier (V-LUI)       (S) 2 bytes
   -Enable/Disable Check Data                        (S) 1 bit

   5.7  Control Write Operations Mode Page

   A SDA mode page would contain the following:

   -Volume Set Logical Unit Identifier (V-LUI)       (S) 2 bytes
   -Enable/Disable Write Operations                  (S) 1 bit

   6.0  Spare Operations

   6.1  Create/Modify P-extent Spare Command (Immediate bit in CDB)

   This command would send the following parameter list:

   -Spare Logical Unit Identifier (S-LUI)            (S) 2 bytes
   -P-Extent                                         (S) 12 bytes
   -Redundancy Group Logical Unit Identifier (R-LUI) (R) 1 bytes
   -Associated P-Extent                              (R) 12 bytes

   6.2  Report P-extent Spare Command

   The CDB would contain the following:

   -Report all P-extent Spares (Yes/No)              (S) 1 bit
   -Spare Logical Unit Identifier (S-LUI)            (S) 2 bytes

   This command would return the following parameter list:

   -Spare Logical Unit Identifier (S-LUI)                     (R) 2 bytes
   -P-Extent                                        (1 per S-LUI) 12 bytes
   -State of the spare                              (1 per S-LUI) 1 byte
   -Redundancy Group Logical Unit Identifier (R-LUI)(x per S-LUI) 2 bytes
   -Associated P-Extent                             (x per S-LUI) 12 bytes

   6.3  Create/Modify P-LUI/C-LUI Spare Command (Immediate bit in
        CDB)

   The CDB would contain the following:

   -Create/Modify P-LUI or C-LUI Spare               (S) 1 bit

   This command would send the following parameter list:

   -Spare Logical Unit Identifier (S-LUI)            (S) 2 bytes
   -P-LUI or C-LUI                                   (S) 2 bytes
   -Redundancy Group Logical Unit Identifier (R-LUI) (R) 2 bytes
   -Associated P-LUI                                 (R) 2 bytes
   -Associated C-LUI                                 (R) 2 bytes

   6.4  Report P-LUI/C-LUI Spare Command

   The CDB would contain the following:

   -Report P-LUI Spares or C-LUI Spares              (S) 1 bit
   -Report all P-LUI Spares or C-LUI Spares (Yes/No) (S) 1 bit
   -Spare Logical Unit Identifier (S-LUI)            (S) 2 bytes

   This command would return the following parameter list:

   -Spare Logical Unit Identifier (S-LUI)                     (R) 2 bytes
   -P-LUI or C-LUI                                  (1 per S-LUI) 2 bytes
   -State of the spare                              (1 per S-LUI) 1 byte
   -Redundancy Group Logical Unit Identifier (R-LUI)(x per S-LUI) 2 bytes
   -Associated P-LUI                                (x per S-LUI) 2 bytes
   -Associated C-LUI                                (x per S-LUI) 2 bytes

   6.5  Delete Spare Command

   The CDB would contain the following:

   -Spare Logical Unit Identifier (S-LUI)  (S) 2 bytes





More information about the T10 mailing list