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: stable/10/share/misc/scsi_modes 313444 2017-02-08 16:01:14Z 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 52312567Smav0x0a,0x03 "Command Duration Limit A"; 53312567Smav 54312567Smav0x0a,0x04 "Command Duration Limit B"; 55312567Smav 56312567Smav0x0a "Control" { 57225950Sken {TST} t3 58225950Sken {TMF_ONLY} t1 59225950Sken {DPICZ} t1 60225950Sken {D_SENSE} t1 61225950Sken {GLTSD} t1 628299Sdufault {RLEC} t1 638299Sdufault {Queue Algorithm Modifier} t4 64225950Sken {NUAR} t1 65225950Sken {QErr} t2 668299Sdufault {DQue} t1 678299Sdufault {EECA} t1 68225950Sken {RAC} t1 69225950Sken {UA_INTLCK_CTRL} t2 70225950Sken {SWP} t1 718299Sdufault {RAENP} t1 728299Sdufault {UAAENP} t1 738299Sdufault {EAENP} t1 74225950Sken {ATO} t1 75225950Sken {TAS} t1 76225950Sken {ATMPE} t1 77225950Sken {RWWP} t1 78312530Smav {SBLP (Supported Block Lengths and Protection)} t1 79225950Sken {Autoload Mode} t3 808146Sdufault {Ready AEN Holdoff Period} i2 81225950Sken {Busy Timeout Period} i2 82225950Sken {Extended Self-Test Completion Time} i2 838146Sdufault} 848146Sdufault 85312567Smav0x0a,0x01 "Control Extension" { 86312567Smav {Reserved} *t4 87312567Smav {DLC} t1 88312567Smav {TCMOS} t1 89312567Smav {SCSIP} t1 90312567Smav {IALUAE} t1 91312567Smav {Reserved} *t4 92312567Smav {Initial Command Priority} t4 93312567Smav {Maximum Sense Data Length} i1 94312567Smav} 95312567Smav 96312567Smav0x02 "Disconnect-Reconnect" { 978146Sdufault {Buffer Full Ratio} i1 988146Sdufault {Buffer Empty Ratio} i1 998146Sdufault {Bus Inactivity Limit} i2 1008146Sdufault {Disconnect Time Limit} i2 1018146Sdufault {Connect Time Limit} i2 1028146Sdufault {Maximum Burst Size} i2 1038299Sdufault {Reserved} *t6 1048299Sdufault {DTDC} t2 1058146Sdufault {Reserved} *i1 1068146Sdufault {Reserved} *i1 1078146Sdufault {Reserved} *i1 1088146Sdufault} 1098146Sdufault 110312567Smav0x15 "Extended"; 111234376Smav 112312567Smav0x16 "Extended Device-Type Specific"; 113234376Smav 114312567Smav0x09 "Peripheral Device" { 1158146Sdufault {Interface Identifier} i2 1168146Sdufault {Reserved} *i1 1178146Sdufault {Reserved} *i1 1188146Sdufault {Reserved} *i1 1198146Sdufault {Reserved} *i1 1208146Sdufault} 1218146Sdufault 122312567Smav0x1a "Power Condition" { 123312567Smav {PM_BG_PRECEDENCE} t1 12476999Sjoerg {Reserved} *t6 125312567Smav {STANDBY_Y} t1 126312567Smav {Reserved} *t4 127312567Smav {IDLE_C} t1 128312567Smav {IDLE_B} t1 129312567Smav {IDLE_A} t1 130312567Smav {STANDBY_Z} t1 131312567Smav {IDLE_A Condition Timer} i4 132312567Smav {STANDBY_Z Condition Timer} i4 133312567Smav {IDLE_B Condition Timer} i4 134312567Smav {IDLE_C Condition Timer} i4 135312567Smav {STANDBY_Y Condition Timer} i4 136312567Smav {Reserved} *i4 137312567Smav {Reserved} *i4 138312567Smav {Reserved} *i4 139312567Smav {Reserved} *i3 140312567Smav {CCF Idle} t2 141312567Smav {CCF Standby} t2 142312567Smav {CCF Stopped} t2 143312567Smav {Reserved} *t2 14476999Sjoerg} 1458146Sdufault 146312567Smav0x1a,0x01 "Power Consumption" { 147312567Smav {Reserved} *i2 148312567Smav {Reserved} *t6 149312567Smav {Active Level} t2 150312567Smav {Power Consumption Identifier} i1 151312567Smav {Reserved} *i4 152312567Smav {Reserved} *i4 153312567Smav} 154234376Smav 155312567Smav0x18 "Protocol-Specific Logical Unit"; 156234376Smav 157312567Smav0x19 "Protocol-Specific Port"; 158312567Smav 1598146Sdufault# DIRECT ACCESS DEVICES 160312567Smav 161312567Smav0x0a,0x02 "Application Tag"; 162312567Smav 163312567Smav0x1a,0xf1 "ATA Power Condition"; 164312567Smav 165312567Smav0x1c,0x01 "Background Control" { 166312567Smav {Reserved} *t5 167312567Smav {S_L_FULL} *t1 168312567Smav {LOWIR} *t1 169312567Smav {EN_BMS} *t1 170312567Smav {Reserved} *t7 171312567Smav {EN_PS} *t1 172312567Smav {Background Medium Scan Interval Time} i2 173312567Smav {Background Pre-Scan Time Limit} i2 174312567Smav {Minimum Idle Time Before Background Scan} i2 175312567Smav {Maximum Time To Suspend Background Scan} i2 176312567Smav {Reserved} *i2 177312567Smav} 178312567Smav 179312567Smav0x0a,0x06 "Background Operation Control" { 180312567Smav {BO_MODE} t2 181312567Smav {Reserved} *t6 182312567Smav} 183312567Smav 184312567Smav0x08 "Caching" { 18531562Stegge {IC} t1 18631562Stegge {ABPF} t1 18731562Stegge {CAP} t1 18831562Stegge {DISC} t1 18931562Stegge {SIZE} t1 1908299Sdufault {WCE} t1 1918299Sdufault {MF} t1 1928299Sdufault {RCD} t1 1938299Sdufault {Demand Retention Priority} t4 1948299Sdufault {Write Retention Priority} t4 1958146Sdufault {Disable Pre-fetch Transfer Length} i2 19617766Smpp {Minimum Pre-fetch} i2 1978146Sdufault {Maximum Pre-fetch} i2 1988146Sdufault {Maximum Pre-fetch Ceiling} i2 199312530Smav {FSW (Force Sequential Write)} t1 200312530Smav {LBCSS (Logical Block Cache Segment Size)} t1 201312530Smav {DRA (Disable Read-Ahead)} t1 202312530Smav {Vendor Specific} t2 203312530Smav {SYNC_PROG} t1 204312530Smav {NV_DIS} t1 205312530Smav {Number of Cache Segments} i1 206312530Smav {Cache Segment Size} i2 207312530Smav {Reserved} *t4 2088146Sdufault} 2098146Sdufault 210312567Smav0x05 "Flexible Disk" { 2118146Sdufault {Transfer rate} i2 2128146Sdufault {Number of heads} i1 2138146Sdufault {Sectors per track} i1 2148146Sdufault {Data bytes per sector} i2 2158146Sdufault {Number of cylinders} i2 2168146Sdufault {Starting cylinder-write precompensation} i2 2178146Sdufault {Starting cylinder-reduced write current} i2 2188146Sdufault {Drive step rate} i2 2198146Sdufault {Drive step pulse width} i1 2208146Sdufault {Head settle delay} i2 2218146Sdufault {Motor on delay} i1 2228146Sdufault {Motor off delay} i1 2238299Sdufault {TRDY} t1 2248299Sdufault {SSN} t1 2258299Sdufault {MO} t1 2268299Sdufault {Reserved} *t5 2278299Sdufault {Reserved} *t4 2288299Sdufault {SPC} t4 2298146Sdufault {Write Compensation} i1 2308146Sdufault {Head load delay} i1 2318146Sdufault {Head unload delay} i1 2328299Sdufault {Pin 34} t4 2338299Sdufault {Pin 2} t4 2348299Sdufault {Pin 4} t4 2358299Sdufault {Pin 1} t4 2368146Sdufault {Medium rotation rate} i2 2378146Sdufault {Reserved} *i1 2388146Sdufault {Reserved} *i1 2398146Sdufault} 2408146Sdufault 241312567Smav0x03 "Format Device" { 2428146Sdufault {Tracks per Zone} i2 2438146Sdufault {Alternate Sectors per Zone} i2 2448146Sdufault {Alternate Tracks per Zone} i2 2458146Sdufault {Alternate Tracks per Logical Unit} i2 2468146Sdufault {Sectors per Track} i2 2478146Sdufault {Data Bytes per Physical Sector} i2 2488146Sdufault {Interleave} i2 2498146Sdufault {Track Skew Factor} i2 2508146Sdufault {Cylinder Skew Factor} i2 2518299Sdufault {SSEC} t1 2528299Sdufault {HSEC} t1 2538299Sdufault {RMB} t1 2548299Sdufault {SURF} t1 2558299Sdufault {Reserved} *t4 2568146Sdufault} 2578146Sdufault 258312567Smav0x0a,0x05 "I/O Advice Hints Grouping"; 259312567Smav 260312567Smav0x1c "Informational Exceptions Control" { 261312567Smav {PERF} t1 262312567Smav {Reserved} *t1 263312567Smav {EBF} t1 264312567Smav {EWasc} t1 265312567Smav {DExcpt} t1 266312567Smav {TEST} t1 267312567Smav {EBACKERR} t1 268312567Smav {LogErr} t1 269312567Smav {Reserved} *t4 270312567Smav {MRIE} t4 271312567Smav {Interval Timer} i4 272312567Smav {Report Count} i4 273312567Smav} 274312567Smav 275312567Smav0x1c,0x02 "Logical Block Provisioning" { 276312567Smav {Reserved} *t7 277312567Smav {SITUA} t1 2788146Sdufault {Reserved} *i1 2798146Sdufault {Reserved} *i1 280312567Smav {Reserved} *i1 281312567Smav {Reserved} *i4 282312567Smav {Reserved} *i4 283312567Smav} 284312567Smav 285312567Smav0x0b "Medium Types Supported" { 286312567Smav {Reserved} *i1 287312567Smav {Reserved} *i1 2888146Sdufault {Medium type one supported} i1 2898146Sdufault {Medium type two supported} i1 2908146Sdufault {Medium type three supported} i1 2918146Sdufault {Medium type four supported} i1 2928146Sdufault} 2938146Sdufault 294312567Smav0x0c "Notch and Partition"; 2958146Sdufault 296312567Smav0x0a,0xf1 "PATA Control"; 297312567Smav 298312567Smav0x01 "Read-Write Error Recovery" { 2998299Sdufault {AWRE (Auto Write Reallocation Enbld)} t1 3008299Sdufault {ARRE (Auto Read Reallocation Enbld)} t1 3018299Sdufault {TB (Transfer Block)} t1 3028299Sdufault {RC (Read Continuous)} t1 3038299Sdufault {EER (Enable Early Recovery)} t1 3048299Sdufault {PER (Post Error)} t1 3058299Sdufault {DTE (Disable Transfer on Error)} t1 3068299Sdufault {DCR (Disable Correction)} t1 3078146Sdufault {Read Retry Count} i1 3088146Sdufault {Correction Span} i1 3098146Sdufault {Head Offset Count} i1 3108146Sdufault {Data Strobe Offset Count} i1 311273325Smav {LBPERE (LBP Error Reporting Enabled)} t1 312312530Smav {MWR (Misaligned Write Reporting)} t2 313312530Smav {Reserved} *t5 3148146Sdufault {Write Retry Count} i1 3158146Sdufault {Reserved} *i1 3168146Sdufault {Recovery Time Limit} i2 3178146Sdufault} 3188146Sdufault 319312567Smav0x04 "Rigid Disk Drive Geometry" { 3208146Sdufault {Number of Cylinders} i3 3218146Sdufault {Number of Heads} i1 3228146Sdufault {Starting Cylinder-Write Precompensation} i3 3238146Sdufault {Starting Cylinder-Reduced Write Current} i3 3248146Sdufault {Drive Step Rate} i2 3258146Sdufault {Landing Zone Cylinder} i3 3268299Sdufault {Reserved} *t6 3278299Sdufault {RPL} t2 3288146Sdufault {Rotational Offset} i1 3298146Sdufault {Reserved} *i1 3308146Sdufault {Medium Rotation Rate} i2 3318146Sdufault {Reserved} *i1 3328146Sdufault {Reserved} *i1 3338146Sdufault} 3348146Sdufault 335312567Smav0x07 "Verify Error Recovery" { 3368299Sdufault {Reserved} *t4 3378299Sdufault {EER} t1 3388299Sdufault {PER} t1 3398299Sdufault {DTE} t1 3408299Sdufault {DCR} t1 3418146Sdufault {Verify Retry Count} i1 3428146Sdufault {Verify Correction Span} i1 3438146Sdufault {Reserved} *i1 3448146Sdufault {Reserved} *i1 3458146Sdufault {Reserved} *i1 3468146Sdufault {Reserved} *i1 3478146Sdufault {Reserved} *i1 3488146Sdufault {Verify Recovery Time Limit} i2 3498146Sdufault} 35013077Sjoerg 351312567Smav0x0E "CD-ROM Audio Control Parameters" { 35213077Sjoerg {Reserved} *t5 35313077Sjoerg {Immed} t1 35413077Sjoerg {SOTC} t1 35513077Sjoerg {Reserved} *t1 35613077Sjoerg {Reserved} *i2 35713077Sjoerg {APRVal} t1 35813077Sjoerg {Reserved} *t3 35913077Sjoerg {Format of LBAs / sec.} t4 36013077Sjoerg {Logical Blocks per Second of Audio Playback} i2 36113077Sjoerg {Reserved} *t4 36213077Sjoerg {Output Port 0 Channel Selection} t4 36313077Sjoerg {Output Port 0 Volume} i1 36413077Sjoerg {Reserved} *t4 36513077Sjoerg {Output Port 1 Channel Selection} t4 36613077Sjoerg {Output Port 1 Volume} i1 36713077Sjoerg {Reserved} *t4 36813077Sjoerg {Output Port 2 Channel Selection} t4 36913077Sjoerg {Output Port 2 Volume} i1 37013077Sjoerg {Reserved} *t4 37113077Sjoerg {Output Port 3 Channel Selection} t4 37213077Sjoerg {Output Port 3 Volume} i1 37313077Sjoerg} 37421812Sjoerg 37567817Smjacob# SEQUENTIAL ACCESS DEVICES 376312567Smav0x10 "Device Configuration" { 37721812Sjoerg {Reserved} *t1 37821812Sjoerg {Change Active Partition} t1 37921812Sjoerg {Change Active Format} t1 38021812Sjoerg {Active Format} t5 38121812Sjoerg {Active Partition} i1 38221812Sjoerg {Write Buffer Full Ratio} i1 38321812Sjoerg {Write Buffer Empty Ratio} i1 38421812Sjoerg {Write Delay Time} i2 38521812Sjoerg {Data Buffer Recovery} t1 38621812Sjoerg {Block Identifiers Support} t1 38721812Sjoerg {Report Setmarks} t1 38864382Skbyanc {Automatic Velocity Control} t1 38921812Sjoerg {Stop on Consecutive Filemarks} t2 39021812Sjoerg {Recover Buffer Order} t1 39121812Sjoerg {Report Early-Warning} t1 39221812Sjoerg {Gap Size} i1 39321812Sjoerg {EOD Defined} t3 39421812Sjoerg {Enable EOD Generation} t1 39521812Sjoerg {Synchronize at Early-Warning} t1 39621812Sjoerg {Reserved} *t3 39721812Sjoerg {Buffer Size at Early-Warning} i3 39821812Sjoerg {Select Data Compression Algorithm} i1 39967817Smjacob {Reserved} *t5 40067817Smjacob {SCSI-3 Associated Write Protect} t1 40167817Smjacob {SCSI-3 Persistent Write Protect} t1 40267817Smjacob {SCSI-3 Permanent Write Protect} t1 40321812Sjoerg} 40464382Skbyanc 405312567Smav0x0f "Data Compression" { 40667817Smjacob {Data Compression Enabled} t1 40767817Smjacob {Date Compression Capable} t1 40867817Smjacob {Reserved} *t6 40967817Smjacob {Data Decompression Capable} t1 41067817Smjacob {Data Decompression Report on Exception} t2 41167817Smjacob {Reserved} *t5 41267817Smjacob {Compression Algorithm} i4 41367817Smjacob {Decompression Algorithm} i4 41467817Smjacob {Reserved} *i4 41567817Smjacob} 41667817Smjacob 417136422Sbms# Removable devices 418312567Smav0x1b "Removable Block Access Capacities" { 419136422Sbms {System Floppy Type Device} t1 420136422Sbms {Supports Reporting Format Progress} t1 421136422Sbms {Reserved} *t6 422136422Sbms {Non CD Optical Device} t1 423136422Sbms {Single or Multiple LUN Supported} t1 424136422Sbms {Reserved} *t3 425136422Sbms {Total Logical Units Supported} t3 426136422Sbms {Reserved} *i8 427136422Sbms} 428136422Sbms 42991196Sjoerg# CD-ROM (and CD-R[W]) devices 430312567Smav0x2a "CD capabilities and mechanical status" { 43191196Sjoerg {Reserved} *t4 43291196Sjoerg {Method 2} t1 43391196Sjoerg {CD-RW Read} t1 43491196Sjoerg {CD-R Read} t1 43591196Sjoerg {Reserved} *t4 43691196Sjoerg {Test Write} t1 43791196Sjoerg {CD-RW Write} t1 43891196Sjoerg {CD-R Write} t1 43991196Sjoerg {Reserved} *t1 44091196Sjoerg {Multi Session} t1 44191196Sjoerg {Mode 2 Form 2} t1 44291196Sjoerg {Mode 2 Form 1} t1 44391196Sjoerg {Digital Port (2)} t1 44491196Sjoerg {Digital Port (1)} t1 44591196Sjoerg {Composite} t1 44691196Sjoerg {Audio Play} t1 44791196Sjoerg {Read Bar Code} t1 44891196Sjoerg {UPC} t1 44991196Sjoerg {ISRC} t1 45091196Sjoerg {C2 Pointers are supported} t1 45191196Sjoerg {R-W De-interleaved & corrected} t1 45291196Sjoerg {R-W Supported} t1 45391196Sjoerg {CD-DA Stream is Accurate} t1 45491196Sjoerg {CD-DA Commands Supported} t1 45591196Sjoerg {Loading Mechanism Type} t3 45691196Sjoerg {Reserved} *t1 45791196Sjoerg {Eject} t1 45891196Sjoerg {Prevent Jumper} t1 45991196Sjoerg {Lock State} t1 46091196Sjoerg {Lock} t1 46191196Sjoerg {Reserved} *t4 46291196Sjoerg {S/W Slot Selection} t1 46391196Sjoerg {Changer Supports Disc Present reporting} t1 46491196Sjoerg {Separate Channel Mute Supported} t1 46591196Sjoerg {Separate volume levels per channel} t1 46691196Sjoerg {Maximum Read Speed Supported (kBps)} i2 46791196Sjoerg {Number of Volume Leves Supported} i2 46891196Sjoerg {Buffer Size supported by Drive (KB)} i2 46991196Sjoerg {Current Read Speed Selected (kBps)} i2 47091196Sjoerg {Reserved} *i1 47191196Sjoerg {Reserved} *t2 47291196Sjoerg {Length} t2 47391196Sjoerg {LSBF} t1 47491196Sjoerg {RCK} t1 47591196Sjoerg {BCK} t1 47691196Sjoerg {Reserved} *t1 47791196Sjoerg {Maximum Write Speed Supported (kBps)} i2 47891196Sjoerg {Current Write Speed Supported (kBps)} i2 47991196Sjoerg}; 48091196Sjoerg 481313444Smav0x1d "Timeout and Protect" { 482313444Smav {Reserved} *i2 483313444Smav {Reserved} *t4 484313444Smav {G3Enable} t1 485313444Smav {TMOE} t1 486313444Smav {DISP} t1 487313444Smav {SWPP} t1 488313444Smav {Reserved} *i1 489313444Smav {Group 1 Minimum Timeout} i2 490313444Smav {Group 2 Minimum Timeout} i2 491313444Smav {Group 3 Timeout} i2 492313444Smav}; 493313444Smav 49464382Skbyanc0x00 "Vendor-Specific"; 495