1# SCSI mode page data base. 2 3# Copyright (c) 1995 HD Associates 4# Copyright (c) 2001 The FreeBSD Project 5# (contact: dufault@hda.com) 6# All rights reserved. 7# 8# Redistribution and use in source and binary forms, with or without 9# modification, are permitted provided that the following conditions 10# are met: 11# 1. Redistributions of source code must retain the above copyright 12# notice, this list of conditions and the following disclaimer. 13# 2. Redistributions in binary form must reproduce the above copyright 14# notice, this list of conditions and the following disclaimer in the 15# documentation and/or other materials provided with the distribution. 16# 3. The name of HD Associates 17# may not be used to endorse or promote products derived from this software 18# without specific prior written permission. 19# 20# THIS SOFTWARE IS PROVIDED BY HD ASSOCIATES ``AS IS'' AND 21# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23# ARE DISCLAIMED. IN NO EVENT SHALL HD ASSOCIATES BE LIABLE 24# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30# SUCH DAMAGE. 31# 32# 33# The ordering is alphabetical by page name, as it appears in the SCSI spec. 34 35# 'i' is a byte-sized integral types, followed by a field width of 36# 1 through 4 (1 to 4 bytes). 37# 38# 'b' is a bit-sized integral type 39# 't' is a bitfield type- followed by a bit field width 40# 41# 'c' values are character arrays 42# 'z' values are null-padded strings 43# 44# 45# '*' suppresses assignment (for 'seeking'). 46# Bitfields are MSB to LSB. 47 48 49# ALL DEVICE TYPES 50 510x0a,0x03 "Command Duration Limit A"; 52 530x0a,0x04 "Command Duration Limit B"; 54 550x0a "Control" { 56 {TST} t3 57 {TMF_ONLY} t1 58 {DPICZ} t1 59 {D_SENSE} t1 60 {GLTSD} t1 61 {RLEC} t1 62 {Queue Algorithm Modifier} t4 63 {NUAR} t1 64 {QErr} t2 65 {DQue} t1 66 {EECA} t1 67 {RAC} t1 68 {UA_INTLCK_CTRL} t2 69 {SWP} t1 70 {RAENP} t1 71 {UAAENP} t1 72 {EAENP} t1 73 {ATO} t1 74 {TAS} t1 75 {ATMPE} t1 76 {RWWP} t1 77 {SBLP (Supported Block Lengths and Protection)} t1 78 {Autoload Mode} t3 79 {Ready AEN Holdoff Period} i2 80 {Busy Timeout Period} i2 81 {Extended Self-Test Completion Time} i2 82} 83 840x0a,0x01 "Control Extension" { 85 {Reserved} *t4 86 {DLC} t1 87 {TCMOS} t1 88 {SCSIP} t1 89 {IALUAE} t1 90 {Reserved} *t4 91 {Initial Command Priority} t4 92 {Maximum Sense Data Length} i1 93} 94 950x02 "Disconnect-Reconnect" { 96 {Buffer Full Ratio} i1 97 {Buffer Empty Ratio} i1 98 {Bus Inactivity Limit} i2 99 {Disconnect Time Limit} i2 100 {Connect Time Limit} i2 101 {Maximum Burst Size} i2 102 {Reserved} *t6 103 {DTDC} t2 104 {Reserved} *i1 105 {Reserved} *i1 106 {Reserved} *i1 107} 108 1090x15 "Extended"; 110 1110x16 "Extended Device-Type Specific"; 112 1130x09 "Peripheral Device" { 114 {Interface Identifier} i2 115 {Reserved} *i1 116 {Reserved} *i1 117 {Reserved} *i1 118 {Reserved} *i1 119} 120 1210x1a "Power Condition" { 122 {PM_BG_PRECEDENCE} t1 123 {Reserved} *t6 124 {STANDBY_Y} t1 125 {Reserved} *t4 126 {IDLE_C} t1 127 {IDLE_B} t1 128 {IDLE_A} t1 129 {STANDBY_Z} t1 130 {IDLE_A Condition Timer} i4 131 {STANDBY_Z Condition Timer} i4 132 {IDLE_B Condition Timer} i4 133 {IDLE_C Condition Timer} i4 134 {STANDBY_Y Condition Timer} i4 135 {Reserved} *i4 136 {Reserved} *i4 137 {Reserved} *i4 138 {Reserved} *i3 139 {CCF Idle} t2 140 {CCF Standby} t2 141 {CCF Stopped} t2 142 {Reserved} *t2 143} 144 1450x1a,0x01 "Power Consumption" { 146 {Reserved} *i2 147 {Reserved} *t6 148 {Active Level} t2 149 {Power Consumption Identifier} i1 150 {Reserved} *i4 151 {Reserved} *i4 152} 153 1540x18 "Protocol-Specific Logical Unit"; 155 1560x19 "Protocol-Specific Port"; 157 158# DIRECT ACCESS DEVICES 159 1600x0a,0x02 "Application Tag"; 161 1620x1a,0xf1 "ATA Power Condition"; 163 1640x1c,0x01 "Background Control" { 165 {Reserved} *t5 166 {S_L_FULL} *t1 167 {LOWIR} *t1 168 {EN_BMS} *t1 169 {Reserved} *t7 170 {EN_PS} *t1 171 {Background Medium Scan Interval Time} i2 172 {Background Pre-Scan Time Limit} i2 173 {Minimum Idle Time Before Background Scan} i2 174 {Maximum Time To Suspend Background Scan} i2 175 {Reserved} *i2 176} 177 1780x0a,0x06 "Background Operation Control" { 179 {BO_MODE} t2 180 {Reserved} *t6 181} 182 1830x08 "Caching" { 184 {IC} t1 185 {ABPF} t1 186 {CAP} t1 187 {DISC} t1 188 {SIZE} t1 189 {WCE} t1 190 {MF} t1 191 {RCD} t1 192 {Demand Retention Priority} t4 193 {Write Retention Priority} t4 194 {Disable Pre-fetch Transfer Length} i2 195 {Minimum Pre-fetch} i2 196 {Maximum Pre-fetch} i2 197 {Maximum Pre-fetch Ceiling} i2 198 {FSW (Force Sequential Write)} t1 199 {LBCSS (Logical Block Cache Segment Size)} t1 200 {DRA (Disable Read-Ahead)} t1 201 {Vendor Specific} t2 202 {SYNC_PROG} t1 203 {NV_DIS} t1 204 {Number of Cache Segments} i1 205 {Cache Segment Size} i2 206 {Reserved} *t4 207} 208 2090x05 "Flexible Disk" { 210 {Transfer rate} i2 211 {Number of heads} i1 212 {Sectors per track} i1 213 {Data bytes per sector} i2 214 {Number of cylinders} i2 215 {Starting cylinder-write precompensation} i2 216 {Starting cylinder-reduced write current} i2 217 {Drive step rate} i2 218 {Drive step pulse width} i1 219 {Head settle delay} i2 220 {Motor on delay} i1 221 {Motor off delay} i1 222 {TRDY} t1 223 {SSN} t1 224 {MO} t1 225 {Reserved} *t5 226 {Reserved} *t4 227 {SPC} t4 228 {Write Compensation} i1 229 {Head load delay} i1 230 {Head unload delay} i1 231 {Pin 34} t4 232 {Pin 2} t4 233 {Pin 4} t4 234 {Pin 1} t4 235 {Medium rotation rate} i2 236 {Reserved} *i1 237 {Reserved} *i1 238} 239 2400x03 "Format Device" { 241 {Tracks per Zone} i2 242 {Alternate Sectors per Zone} i2 243 {Alternate Tracks per Zone} i2 244 {Alternate Tracks per Logical Unit} i2 245 {Sectors per Track} i2 246 {Data Bytes per Physical Sector} i2 247 {Interleave} i2 248 {Track Skew Factor} i2 249 {Cylinder Skew Factor} i2 250 {SSEC} t1 251 {HSEC} t1 252 {RMB} t1 253 {SURF} t1 254 {Reserved} *t4 255} 256 2570x0a,0x05 "I/O Advice Hints Grouping"; 258 2590x1c "Informational Exceptions Control" { 260 {PERF} t1 261 {Reserved} *t1 262 {EBF} t1 263 {EWasc} t1 264 {DExcpt} t1 265 {TEST} t1 266 {EBACKERR} t1 267 {LogErr} t1 268 {Reserved} *t4 269 {MRIE} t4 270 {Interval Timer} i4 271 {Report Count} i4 272} 273 2740x1c,0x02 "Logical Block Provisioning" { 275 {Reserved} *t7 276 {SITUA} t1 277 {Reserved} *i1 278 {Reserved} *i1 279 {Reserved} *i1 280 {Reserved} *i4 281 {Reserved} *i4 282} 283 2840x0b "Medium Types Supported" { 285 {Reserved} *i1 286 {Reserved} *i1 287 {Medium type one supported} i1 288 {Medium type two supported} i1 289 {Medium type three supported} i1 290 {Medium type four supported} i1 291} 292 2930x0c "Notch and Partition"; 294 2950x0a,0xf1 "PATA Control"; 296 2970x01 "Read-Write Error Recovery" { 298 {AWRE (Auto Write Reallocation Enbld)} t1 299 {ARRE (Auto Read Reallocation Enbld)} t1 300 {TB (Transfer Block)} t1 301 {RC (Read Continuous)} t1 302 {EER (Enable Early Recovery)} t1 303 {PER (Post Error)} t1 304 {DTE (Disable Transfer on Error)} t1 305 {DCR (Disable Correction)} t1 306 {Read Retry Count} i1 307 {Correction Span} i1 308 {Head Offset Count} i1 309 {Data Strobe Offset Count} i1 310 {LBPERE (LBP Error Reporting Enabled)} t1 311 {MWR (Misaligned Write Reporting)} t2 312 {Reserved} *t5 313 {Write Retry Count} i1 314 {Reserved} *i1 315 {Recovery Time Limit} i2 316} 317 3180x04 "Rigid Disk Drive Geometry" { 319 {Number of Cylinders} i3 320 {Number of Heads} i1 321 {Starting Cylinder-Write Precompensation} i3 322 {Starting Cylinder-Reduced Write Current} i3 323 {Drive Step Rate} i2 324 {Landing Zone Cylinder} i3 325 {Reserved} *t6 326 {RPL} t2 327 {Rotational Offset} i1 328 {Reserved} *i1 329 {Medium Rotation Rate} i2 330 {Reserved} *i1 331 {Reserved} *i1 332} 333 3340x07 "Verify Error Recovery" { 335 {Reserved} *t4 336 {EER} t1 337 {PER} t1 338 {DTE} t1 339 {DCR} t1 340 {Verify Retry Count} i1 341 {Verify Correction Span} i1 342 {Reserved} *i1 343 {Reserved} *i1 344 {Reserved} *i1 345 {Reserved} *i1 346 {Reserved} *i1 347 {Verify Recovery Time Limit} i2 348} 349 3500x0E "CD-ROM Audio Control Parameters" { 351 {Reserved} *t5 352 {Immed} t1 353 {SOTC} t1 354 {Reserved} *t1 355 {Reserved} *i2 356 {APRVal} t1 357 {Reserved} *t3 358 {Format of LBAs / sec.} t4 359 {Logical Blocks per Second of Audio Playback} i2 360 {Reserved} *t4 361 {Output Port 0 Channel Selection} t4 362 {Output Port 0 Volume} i1 363 {Reserved} *t4 364 {Output Port 1 Channel Selection} t4 365 {Output Port 1 Volume} i1 366 {Reserved} *t4 367 {Output Port 2 Channel Selection} t4 368 {Output Port 2 Volume} i1 369 {Reserved} *t4 370 {Output Port 3 Channel Selection} t4 371 {Output Port 3 Volume} i1 372} 373 374# SEQUENTIAL ACCESS DEVICES 3750x10 "Device Configuration" { 376 {Reserved} *t1 377 {Change Active Partition} t1 378 {Change Active Format} t1 379 {Active Format} t5 380 {Active Partition} i1 381 {Write Buffer Full Ratio} i1 382 {Write Buffer Empty Ratio} i1 383 {Write Delay Time} i2 384 {Data Buffer Recovery} t1 385 {Block Identifiers Support} t1 386 {Report Setmarks} t1 387 {Automatic Velocity Control} t1 388 {Stop on Consecutive Filemarks} t2 389 {Recover Buffer Order} t1 390 {Report Early-Warning} t1 391 {Gap Size} i1 392 {EOD Defined} t3 393 {Enable EOD Generation} t1 394 {Synchronize at Early-Warning} t1 395 {Reserved} *t3 396 {Buffer Size at Early-Warning} i3 397 {Select Data Compression Algorithm} i1 398 {Reserved} *t5 399 {SCSI-3 Associated Write Protect} t1 400 {SCSI-3 Persistent Write Protect} t1 401 {SCSI-3 Permanent Write Protect} t1 402} 403 4040x0f "Data Compression" { 405 {Data Compression Enabled} t1 406 {Date Compression Capable} t1 407 {Reserved} *t6 408 {Data Decompression Capable} t1 409 {Data Decompression Report on Exception} t2 410 {Reserved} *t5 411 {Compression Algorithm} i4 412 {Decompression Algorithm} i4 413 {Reserved} *i4 414} 415 416# Removable devices 4170x1b "Removable Block Access Capacities" { 418 {System Floppy Type Device} t1 419 {Supports Reporting Format Progress} t1 420 {Reserved} *t6 421 {Non CD Optical Device} t1 422 {Single or Multiple LUN Supported} t1 423 {Reserved} *t3 424 {Total Logical Units Supported} t3 425 {Reserved} *i8 426} 427 428# CD-ROM (and CD-R[W]) devices 4290x2a "CD capabilities and mechanical status" { 430 {Reserved} *t4 431 {Method 2} t1 432 {CD-RW Read} t1 433 {CD-R Read} t1 434 {Reserved} *t4 435 {Test Write} t1 436 {CD-RW Write} t1 437 {CD-R Write} t1 438 {Reserved} *t1 439 {Multi Session} t1 440 {Mode 2 Form 2} t1 441 {Mode 2 Form 1} t1 442 {Digital Port (2)} t1 443 {Digital Port (1)} t1 444 {Composite} t1 445 {Audio Play} t1 446 {Read Bar Code} t1 447 {UPC} t1 448 {ISRC} t1 449 {C2 Pointers are supported} t1 450 {R-W De-interleaved & corrected} t1 451 {R-W Supported} t1 452 {CD-DA Stream is Accurate} t1 453 {CD-DA Commands Supported} t1 454 {Loading Mechanism Type} t3 455 {Reserved} *t1 456 {Eject} t1 457 {Prevent Jumper} t1 458 {Lock State} t1 459 {Lock} t1 460 {Reserved} *t4 461 {S/W Slot Selection} t1 462 {Changer Supports Disc Present reporting} t1 463 {Separate Channel Mute Supported} t1 464 {Separate volume levels per channel} t1 465 {Maximum Read Speed Supported (kBps)} i2 466 {Number of Volume Leves Supported} i2 467 {Buffer Size supported by Drive (KB)} i2 468 {Current Read Speed Selected (kBps)} i2 469 {Reserved} *i1 470 {Reserved} *t2 471 {Length} t2 472 {LSBF} t1 473 {RCK} t1 474 {BCK} t1 475 {Reserved} *t1 476 {Maximum Write Speed Supported (kBps)} i2 477 {Current Write Speed Supported (kBps)} i2 478}; 479 4800x1d "Timeout and Protect" { 481 {Reserved} *i2 482 {Reserved} *t4 483 {G3Enable} t1 484 {TMOE} t1 485 {DISP} t1 486 {SWPP} t1 487 {Reserved} *i1 488 {Group 1 Minimum Timeout} i2 489 {Group 2 Minimum Timeout} i2 490 {Group 3 Timeout} i2 491}; 492 4930x00 "Vendor-Specific"; 494