18146Sdufault# SCSI mode page data base. 28146Sdufault 38146Sdufault# Copyright (c) 1995 HD Associates 476999Sjoerg# Copyright (c) 2001 The FreeBSD Project 58146Sdufault# (contact: dufault@hda.com) 68146Sdufault# All rights reserved. 78146Sdufault# 88146Sdufault# Redistribution and use in source and binary forms, with or without 98146Sdufault# modification, are permitted provided that the following conditions 108146Sdufault# are met: 118146Sdufault# 1. Redistributions of source code must retain the above copyright 128146Sdufault# notice, this list of conditions and the following disclaimer. 138146Sdufault# 2. Redistributions in binary form must reproduce the above copyright 148146Sdufault# notice, this list of conditions and the following disclaimer in the 158146Sdufault# documentation and/or other materials provided with the distribution. 168146Sdufault# 3. The name of HD Associates 178146Sdufault# may not be used to endorse or promote products derived from this software 188146Sdufault# without specific prior written permission. 198146Sdufault# 208146Sdufault# THIS SOFTWARE IS PROVIDED BY HD ASSOCIATES ``AS IS'' AND 218146Sdufault# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 228146Sdufault# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 238146Sdufault# ARE DISCLAIMED. IN NO EVENT SHALL HD ASSOCIATES BE LIABLE 248146Sdufault# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 258146Sdufault# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 268146Sdufault# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 278146Sdufault# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 288146Sdufault# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 298146Sdufault# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 308146Sdufault# SUCH DAMAGE. 3164382Skbyanc# 3264382Skbyanc# $FreeBSD: releng/10.2/share/misc/scsi_modes 273325 2014-10-20 08:09:36Z mav $ 3364382Skbyanc# 348146Sdufault# The ordering is alphabetical by page name, as it appears in the SCSI spec. 358146Sdufault 3667817Smjacob# 'i' is a byte-sized integral types, followed by a field width of 3767817Smjacob# 1 through 4 (1 to 4 bytes). 3867817Smjacob# 3967817Smjacob# 'b' is a bit-sized integral type 4067817Smjacob# 't' is a bitfield type- followed by a bit field width 4167817Smjacob# 4267817Smjacob# 'c' values are character arrays 4367817Smjacob# 'z' values are null-padded strings 4467817Smjacob# 4567817Smjacob# 4667817Smjacob# '*' suppresses assignment (for 'seeking'). 4767817Smjacob# Bitfields are MSB to LSB. 4867817Smjacob 4967817Smjacob 508146Sdufault# ALL DEVICE TYPES 518146Sdufault 5264382Skbyanc0x0a "Control Mode Page" { 53225950Sken {TST} t3 54225950Sken {TMF_ONLY} t1 55225950Sken {DPICZ} t1 56225950Sken {D_SENSE} t1 57225950Sken {GLTSD} t1 588299Sdufault {RLEC} t1 598299Sdufault {Queue Algorithm Modifier} t4 60225950Sken {NUAR} t1 61225950Sken {QErr} t2 628299Sdufault {DQue} t1 638299Sdufault {EECA} t1 64225950Sken {RAC} t1 65225950Sken {UA_INTLCK_CTRL} t2 66225950Sken {SWP} t1 678299Sdufault {RAENP} t1 688299Sdufault {UAAENP} t1 698299Sdufault {EAENP} t1 70225950Sken {ATO} t1 71225950Sken {TAS} t1 72225950Sken {ATMPE} t1 73225950Sken {RWWP} t1 74225950Sken {Reserved} *t1 75225950Sken {Autoload Mode} t3 768146Sdufault {Ready AEN Holdoff Period} i2 77225950Sken {Busy Timeout Period} i2 78225950Sken {Extended Self-Test Completion Time} i2 798146Sdufault} 808146Sdufault 8164382Skbyanc0x02 "Disconnect-Reconnect Page" { 828146Sdufault {Buffer Full Ratio} i1 838146Sdufault {Buffer Empty Ratio} i1 848146Sdufault {Bus Inactivity Limit} i2 858146Sdufault {Disconnect Time Limit} i2 868146Sdufault {Connect Time Limit} i2 878146Sdufault {Maximum Burst Size} i2 888299Sdufault {Reserved} *t6 898299Sdufault {DTDC} t2 908146Sdufault {Reserved} *i1 918146Sdufault {Reserved} *i1 928146Sdufault {Reserved} *i1 938146Sdufault} 948146Sdufault 95234376Smav0x15 "Extended Page"; 96234376Smav 97234376Smav0x16 "Extended Device-Type Specific Page"; 98234376Smav 99234376Smav0x1c "Informational Exceptions Control Page" { 100234376Smav {PERF} t1 101234376Smav {Reserved} *t1 102234376Smav {EBF} t1 103234376Smav {EWasc} t1 104234376Smav {DExcpt} t1 105234376Smav {TEST} t1 106234376Smav {EBACKERR} t1 107234376Smav {LogErr} t1 108234376Smav {Reserved} *t4 109234376Smav {MRIE} b4 110234376Smav {Interval Timer} i4 111234376Smav {Report Count} i4 112234376Smav} 113234376Smav 11464382Skbyanc0x09 "Peripheral Device Page" { 1158146Sdufault {Interface Identifier} i2 1168146Sdufault {Reserved} *i1 1178146Sdufault {Reserved} *i1 1188146Sdufault {Reserved} *i1 1198146Sdufault {Reserved} *i1 1208146Sdufault} 1218146Sdufault 122234376Smav0x1a "Power Condition Page" { 12376999Sjoerg {Reserved} *i1 12476999Sjoerg {Reserved} *t6 12576999Sjoerg {Idle} t1 12676999Sjoerg {Standby} t1 12776999Sjoerg {Idle Condition Timer} i4 12876999Sjoerg {Standby Condition Timer} i4 12976999Sjoerg} 1308146Sdufault 131234376Smav0x18 "Protocol-Specific LUN Page"; 132234376Smav 133234376Smav0x19 "Protocol-Specific Port Page"; 134234376Smav 1358146Sdufault# DIRECT ACCESS DEVICES 13664382Skbyanc0x08 "Caching Page" { 13731562Stegge {IC} t1 13831562Stegge {ABPF} t1 13931562Stegge {CAP} t1 14031562Stegge {DISC} t1 14131562Stegge {SIZE} t1 1428299Sdufault {WCE} t1 1438299Sdufault {MF} t1 1448299Sdufault {RCD} t1 1458299Sdufault {Demand Retention Priority} t4 1468299Sdufault {Write Retention Priority} t4 1478146Sdufault {Disable Pre-fetch Transfer Length} i2 14817766Smpp {Minimum Pre-fetch} i2 1498146Sdufault {Maximum Pre-fetch} i2 1508146Sdufault {Maximum Pre-fetch Ceiling} i2 1518146Sdufault} 1528146Sdufault 15364382Skbyanc0x05 "Flexible Disk Page" { 1548146Sdufault {Transfer rate} i2 1558146Sdufault {Number of heads} i1 1568146Sdufault {Sectors per track} i1 1578146Sdufault {Data bytes per sector} i2 1588146Sdufault {Number of cylinders} i2 1598146Sdufault {Starting cylinder-write precompensation} i2 1608146Sdufault {Starting cylinder-reduced write current} i2 1618146Sdufault {Drive step rate} i2 1628146Sdufault {Drive step pulse width} i1 1638146Sdufault {Head settle delay} i2 1648146Sdufault {Motor on delay} i1 1658146Sdufault {Motor off delay} i1 1668299Sdufault {TRDY} t1 1678299Sdufault {SSN} t1 1688299Sdufault {MO} t1 1698299Sdufault {Reserved} *t5 1708299Sdufault {Reserved} *t4 1718299Sdufault {SPC} t4 1728146Sdufault {Write Compensation} i1 1738146Sdufault {Head load delay} i1 1748146Sdufault {Head unload delay} i1 1758299Sdufault {Pin 34} t4 1768299Sdufault {Pin 2} t4 1778299Sdufault {Pin 4} t4 1788299Sdufault {Pin 1} t4 1798146Sdufault {Medium rotation rate} i2 1808146Sdufault {Reserved} *i1 1818146Sdufault {Reserved} *i1 1828146Sdufault} 1838146Sdufault 18464382Skbyanc0x03 "Format Device Page" { 1858146Sdufault {Tracks per Zone} i2 1868146Sdufault {Alternate Sectors per Zone} i2 1878146Sdufault {Alternate Tracks per Zone} i2 1888146Sdufault {Alternate Tracks per Logical Unit} i2 1898146Sdufault {Sectors per Track} i2 1908146Sdufault {Data Bytes per Physical Sector} i2 1918146Sdufault {Interleave} i2 1928146Sdufault {Track Skew Factor} i2 1938146Sdufault {Cylinder Skew Factor} i2 1948299Sdufault {SSEC} t1 1958299Sdufault {HSEC} t1 1968299Sdufault {RMB} t1 1978299Sdufault {SURF} t1 1988299Sdufault {Reserved} *t4 1998146Sdufault} 2008146Sdufault 20164382Skbyanc0x0b "Medium Types Supported Page" { 2028146Sdufault {Reserved} *i1 2038146Sdufault {Reserved} *i1 2048146Sdufault {Medium type one supported} i1 2058146Sdufault {Medium type two supported} i1 2068146Sdufault {Medium type three supported} i1 2078146Sdufault {Medium type four supported} i1 2088146Sdufault} 2098146Sdufault 2108146Sdufault# Notch page (0x0c) 21164382Skbyanc0x0c "Notch and Partition Page"; 2128146Sdufault 21364382Skbyanc0x01 "Read-Write Error Recovery Page" { 2148299Sdufault {AWRE (Auto Write Reallocation Enbld)} t1 2158299Sdufault {ARRE (Auto Read Reallocation Enbld)} t1 2168299Sdufault {TB (Transfer Block)} t1 2178299Sdufault {RC (Read Continuous)} t1 2188299Sdufault {EER (Enable Early Recovery)} t1 2198299Sdufault {PER (Post Error)} t1 2208299Sdufault {DTE (Disable Transfer on Error)} t1 2218299Sdufault {DCR (Disable Correction)} t1 2228146Sdufault {Read Retry Count} i1 2238146Sdufault {Correction Span} i1 2248146Sdufault {Head Offset Count} i1 2258146Sdufault {Data Strobe Offset Count} i1 226273325Smav {LBPERE (LBP Error Reporting Enabled)} t1 227273325Smav {Reserved} *t7 2288146Sdufault {Write Retry Count} i1 2298146Sdufault {Reserved} *i1 2308146Sdufault {Recovery Time Limit} i2 2318146Sdufault} 2328146Sdufault 23364382Skbyanc0x04 "Rigid Disk Drive Geometry Page" { 2348146Sdufault {Number of Cylinders} i3 2358146Sdufault {Number of Heads} i1 2368146Sdufault {Starting Cylinder-Write Precompensation} i3 2378146Sdufault {Starting Cylinder-Reduced Write Current} i3 2388146Sdufault {Drive Step Rate} i2 2398146Sdufault {Landing Zone Cylinder} i3 2408299Sdufault {Reserved} *t6 2418299Sdufault {RPL} t2 2428146Sdufault {Rotational Offset} i1 2438146Sdufault {Reserved} *i1 2448146Sdufault {Medium Rotation Rate} i2 2458146Sdufault {Reserved} *i1 2468146Sdufault {Reserved} *i1 2478146Sdufault} 2488146Sdufault 24964382Skbyanc0x07 "Verify Error Recovery Page" { 2508299Sdufault {Reserved} *t4 2518299Sdufault {EER} t1 2528299Sdufault {PER} t1 2538299Sdufault {DTE} t1 2548299Sdufault {DCR} t1 2558146Sdufault {Verify Retry Count} i1 2568146Sdufault {Verify Correction Span} i1 2578146Sdufault {Reserved} *i1 2588146Sdufault {Reserved} *i1 2598146Sdufault {Reserved} *i1 2608146Sdufault {Reserved} *i1 2618146Sdufault {Reserved} *i1 2628146Sdufault {Verify Recovery Time Limit} i2 2638146Sdufault} 26413077Sjoerg 26564382Skbyanc0x0E "CD-ROM Audio Control Parameters Page" { 26613077Sjoerg {Reserved} *t5 26713077Sjoerg {Immed} t1 26813077Sjoerg {SOTC} t1 26913077Sjoerg {Reserved} *t1 27013077Sjoerg {Reserved} *i2 27113077Sjoerg {APRVal} t1 27213077Sjoerg {Reserved} *t3 27313077Sjoerg {Format of LBAs / sec.} t4 27413077Sjoerg {Logical Blocks per Second of Audio Playback} i2 27513077Sjoerg {Reserved} *t4 27613077Sjoerg {Output Port 0 Channel Selection} t4 27713077Sjoerg {Output Port 0 Volume} i1 27813077Sjoerg {Reserved} *t4 27913077Sjoerg {Output Port 1 Channel Selection} t4 28013077Sjoerg {Output Port 1 Volume} i1 28113077Sjoerg {Reserved} *t4 28213077Sjoerg {Output Port 2 Channel Selection} t4 28313077Sjoerg {Output Port 2 Volume} i1 28413077Sjoerg {Reserved} *t4 28513077Sjoerg {Output Port 3 Channel Selection} t4 28613077Sjoerg {Output Port 3 Volume} i1 28713077Sjoerg} 28821812Sjoerg 28967817Smjacob# SEQUENTIAL ACCESS DEVICES 29067817Smjacob0x10 "Device Configuration Page" { 29121812Sjoerg {Reserved} *t1 29221812Sjoerg {Change Active Partition} t1 29321812Sjoerg {Change Active Format} t1 29421812Sjoerg {Active Format} t5 29521812Sjoerg {Active Partition} i1 29621812Sjoerg {Write Buffer Full Ratio} i1 29721812Sjoerg {Write Buffer Empty Ratio} i1 29821812Sjoerg {Write Delay Time} i2 29921812Sjoerg {Data Buffer Recovery} t1 30021812Sjoerg {Block Identifiers Support} t1 30121812Sjoerg {Report Setmarks} t1 30264382Skbyanc {Automatic Velocity Control} t1 30321812Sjoerg {Stop on Consecutive Filemarks} t2 30421812Sjoerg {Recover Buffer Order} t1 30521812Sjoerg {Report Early-Warning} t1 30621812Sjoerg {Gap Size} i1 30721812Sjoerg {EOD Defined} t3 30821812Sjoerg {Enable EOD Generation} t1 30921812Sjoerg {Synchronize at Early-Warning} t1 31021812Sjoerg {Reserved} *t3 31121812Sjoerg {Buffer Size at Early-Warning} i3 31221812Sjoerg {Select Data Compression Algorithm} i1 31367817Smjacob {Reserved} *t5 31467817Smjacob {SCSI-3 Associated Write Protect} t1 31567817Smjacob {SCSI-3 Persistent Write Protect} t1 31667817Smjacob {SCSI-3 Permanent Write Protect} t1 31721812Sjoerg} 31864382Skbyanc 31967817Smjacob0x0f "Data Compression Page" { 32067817Smjacob {Data Compression Enabled} t1 32167817Smjacob {Date Compression Capable} t1 32267817Smjacob {Reserved} *t6 32367817Smjacob {Data Decompression Capable} t1 32467817Smjacob {Data Decompression Report on Exception} t2 32567817Smjacob {Reserved} *t5 32667817Smjacob {Compression Algorithm} i4 32767817Smjacob {Decompression Algorithm} i4 32867817Smjacob {Reserved} *i4 32967817Smjacob} 33067817Smjacob 331136422Sbms# Removable devices 332136422Sbms0x1b "Removable Block Access Capacities Page" { 333136422Sbms {System Floppy Type Device} t1 334136422Sbms {Supports Reporting Format Progress} t1 335136422Sbms {Reserved} *t6 336136422Sbms {Non CD Optical Device} t1 337136422Sbms {Single or Multiple LUN Supported} t1 338136422Sbms {Reserved} *t3 339136422Sbms {Total Logical Units Supported} t3 340136422Sbms {Reserved} *i8 341136422Sbms} 342136422Sbms 34391196Sjoerg# CD-ROM (and CD-R[W]) devices 34491196Sjoerg0x2a "CD capabilities and mechanical status page" { 34591196Sjoerg {Reserved} *t4 34691196Sjoerg {Method 2} t1 34791196Sjoerg {CD-RW Read} t1 34891196Sjoerg {CD-R Read} t1 34991196Sjoerg {Reserved} *t4 35091196Sjoerg {Test Write} t1 35191196Sjoerg {CD-RW Write} t1 35291196Sjoerg {CD-R Write} t1 35391196Sjoerg {Reserved} *t1 35491196Sjoerg {Multi Session} t1 35591196Sjoerg {Mode 2 Form 2} t1 35691196Sjoerg {Mode 2 Form 1} t1 35791196Sjoerg {Digital Port (2)} t1 35891196Sjoerg {Digital Port (1)} t1 35991196Sjoerg {Composite} t1 36091196Sjoerg {Audio Play} t1 36191196Sjoerg {Read Bar Code} t1 36291196Sjoerg {UPC} t1 36391196Sjoerg {ISRC} t1 36491196Sjoerg {C2 Pointers are supported} t1 36591196Sjoerg {R-W De-interleaved & corrected} t1 36691196Sjoerg {R-W Supported} t1 36791196Sjoerg {CD-DA Stream is Accurate} t1 36891196Sjoerg {CD-DA Commands Supported} t1 36991196Sjoerg {Loading Mechanism Type} t3 37091196Sjoerg {Reserved} *t1 37191196Sjoerg {Eject} t1 37291196Sjoerg {Prevent Jumper} t1 37391196Sjoerg {Lock State} t1 37491196Sjoerg {Lock} t1 37591196Sjoerg {Reserved} *t4 37691196Sjoerg {S/W Slot Selection} t1 37791196Sjoerg {Changer Supports Disc Present reporting} t1 37891196Sjoerg {Separate Channel Mute Supported} t1 37991196Sjoerg {Separate volume levels per channel} t1 38091196Sjoerg {Maximum Read Speed Supported (kBps)} i2 38191196Sjoerg {Number of Volume Leves Supported} i2 38291196Sjoerg {Buffer Size supported by Drive (KB)} i2 38391196Sjoerg {Current Read Speed Selected (kBps)} i2 38491196Sjoerg {Reserved} *i1 38591196Sjoerg {Reserved} *t2 38691196Sjoerg {Length} t2 38791196Sjoerg {LSBF} t1 38891196Sjoerg {RCK} t1 38991196Sjoerg {BCK} t1 39091196Sjoerg {Reserved} *t1 39191196Sjoerg {Maximum Write Speed Supported (kBps)} i2 39291196Sjoerg {Current Write Speed Supported (kBps)} i2 39391196Sjoerg}; 39491196Sjoerg 39564382Skbyanc0x00 "Vendor-Specific"; 396