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# $FreeBSD$ 33# 34# The ordering is alphabetical by page name, as it appears in the SCSI spec. 35 36# 'i' is a byte-sized integral types, followed by a field width of 37# 1 through 4 (1 to 4 bytes). 38# 39# 'b' is a bit-sized integral type 40# 't' is a bitfield type- followed by a bit field width 41# 42# 'c' values are character arrays 43# 'z' values are null-padded strings 44# 45# 46# '*' suppresses assignment (for 'seeking'). 47# Bitfields are MSB to LSB. 48 49 50# ALL DEVICE TYPES 51 520x0a,0x03 "Command Duration Limit A"; 53 540x0a,0x04 "Command Duration Limit B"; 55 560x0a "Control" { 57 {TST} t3 58 {TMF_ONLY} t1 59 {DPICZ} t1 60 {D_SENSE} t1 61 {GLTSD} t1 62 {RLEC} t1 63 {Queue Algorithm Modifier} t4 64 {NUAR} t1 65 {QErr} t2 66 {DQue} t1 67 {EECA} t1 68 {RAC} t1 69 {UA_INTLCK_CTRL} t2 70 {SWP} t1 71 {RAENP} t1 72 {UAAENP} t1 73 {EAENP} t1 74 {ATO} t1 75 {TAS} t1 76 {ATMPE} t1 77 {RWWP} t1 78 {SBLP (Supported Block Lengths and Protection)} t1 79 {Autoload Mode} t3 80 {Ready AEN Holdoff Period} i2 81 {Busy Timeout Period} i2 82 {Extended Self-Test Completion Time} i2 83} 84 850x0a,0x01 "Control Extension" { 86 {Reserved} *t4 87 {DLC} t1 88 {TCMOS} t1 89 {SCSIP} t1 90 {IALUAE} t1 91 {Reserved} *t4 92 {Initial Command Priority} t4 93 {Maximum Sense Data Length} i1 94} 95 960x02 "Disconnect-Reconnect" { 97 {Buffer Full Ratio} i1 98 {Buffer Empty Ratio} i1 99 {Bus Inactivity Limit} i2 100 {Disconnect Time Limit} i2 101 {Connect Time Limit} i2 102 {Maximum Burst Size} i2 103 {Reserved} *t6 104 {DTDC} t2 105 {Reserved} *i1 106 {Reserved} *i1 107 {Reserved} *i1 108} 109 1100x15 "Extended"; 111 1120x16 "Extended Device-Type Specific"; 113 1140x09 "Peripheral Device" { 115 {Interface Identifier} i2 116 {Reserved} *i1 117 {Reserved} *i1 118 {Reserved} *i1 119 {Reserved} *i1 120} 121 1220x1a "Power Condition" { 123 {PM_BG_PRECEDENCE} t1 124 {Reserved} *t6 125 {STANDBY_Y} t1 126 {Reserved} *t4 127 {IDLE_C} t1 128 {IDLE_B} t1 129 {IDLE_A} t1 130 {STANDBY_Z} t1 131 {IDLE_A Condition Timer} i4 132 {STANDBY_Z Condition Timer} i4 133 {IDLE_B Condition Timer} i4 134 {IDLE_C Condition Timer} i4 135 {STANDBY_Y Condition Timer} i4 136 {Reserved} *i4 137 {Reserved} *i4 138 {Reserved} *i4 139 {Reserved} *i3 140 {CCF Idle} t2 141 {CCF Standby} t2 142 {CCF Stopped} t2 143 {Reserved} *t2 144} 145 1460x1a,0x01 "Power Consumption" { 147 {Reserved} *i2 148 {Reserved} *t6 149 {Active Level} t2 150 {Power Consumption Identifier} i1 151 {Reserved} *i4 152 {Reserved} *i4 153} 154 1550x18 "Protocol-Specific Logical Unit"; 156 1570x19 "Protocol-Specific Port"; 158 159# DIRECT ACCESS DEVICES 160 1610x0a,0x02 "Application Tag"; 162 1630x1a,0xf1 "ATA Power Condition"; 164 1650x1c,0x01 "Background Control" { 166 {Reserved} *t5 167 {S_L_FULL} *t1 168 {LOWIR} *t1 169 {EN_BMS} *t1 170 {Reserved} *t7 171 {EN_PS} *t1 172 {Background Medium Scan Interval Time} i2 173 {Background Pre-Scan Time Limit} i2 174 {Minimum Idle Time Before Background Scan} i2 175 {Maximum Time To Suspend Background Scan} i2 176 {Reserved} *i2 177} 178 1790x0a,0x06 "Background Operation Control" { 180 {BO_MODE} t2 181 {Reserved} *t6 182} 183 1840x08 "Caching" { 185 {IC} t1 186 {ABPF} t1 187 {CAP} t1 188 {DISC} t1 189 {SIZE} t1 190 {WCE} t1 191 {MF} t1 192 {RCD} t1 193 {Demand Retention Priority} t4 194 {Write Retention Priority} t4 195 {Disable Pre-fetch Transfer Length} i2 196 {Minimum Pre-fetch} i2 197 {Maximum Pre-fetch} i2 198 {Maximum Pre-fetch Ceiling} i2 199 {FSW (Force Sequential Write)} t1 200 {LBCSS (Logical Block Cache Segment Size)} t1 201 {DRA (Disable Read-Ahead)} t1 202 {Vendor Specific} t2 203 {SYNC_PROG} t1 204 {NV_DIS} t1 205 {Number of Cache Segments} i1 206 {Cache Segment Size} i2 207 {Reserved} *t4 208} 209 2100x05 "Flexible Disk" { 211 {Transfer rate} i2 212 {Number of heads} i1 213 {Sectors per track} i1 214 {Data bytes per sector} i2 215 {Number of cylinders} i2 216 {Starting cylinder-write precompensation} i2 217 {Starting cylinder-reduced write current} i2 218 {Drive step rate} i2 219 {Drive step pulse width} i1 220 {Head settle delay} i2 221 {Motor on delay} i1 222 {Motor off delay} i1 223 {TRDY} t1 224 {SSN} t1 225 {MO} t1 226 {Reserved} *t5 227 {Reserved} *t4 228 {SPC} t4 229 {Write Compensation} i1 230 {Head load delay} i1 231 {Head unload delay} i1 232 {Pin 34} t4 233 {Pin 2} t4 234 {Pin 4} t4 235 {Pin 1} t4 236 {Medium rotation rate} i2 237 {Reserved} *i1 238 {Reserved} *i1 239} 240 2410x03 "Format Device" { 242 {Tracks per Zone} i2 243 {Alternate Sectors per Zone} i2 244 {Alternate Tracks per Zone} i2 245 {Alternate Tracks per Logical Unit} i2 246 {Sectors per Track} i2 247 {Data Bytes per Physical Sector} i2 248 {Interleave} i2 249 {Track Skew Factor} i2 250 {Cylinder Skew Factor} i2 251 {SSEC} t1 252 {HSEC} t1 253 {RMB} t1 254 {SURF} t1 255 {Reserved} *t4 256} 257 2580x0a,0x05 "I/O Advice Hints Grouping"; 259 2600x1c "Informational Exceptions Control" { 261 {PERF} t1 262 {Reserved} *t1 263 {EBF} t1 264 {EWasc} t1 265 {DExcpt} t1 266 {TEST} t1 267 {EBACKERR} t1 268 {LogErr} t1 269 {Reserved} *t4 270 {MRIE} t4 271 {Interval Timer} i4 272 {Report Count} i4 273} 274 2750x1c,0x02 "Logical Block Provisioning" { 276 {Reserved} *t7 277 {SITUA} t1 278 {Reserved} *i1 279 {Reserved} *i1 280 {Reserved} *i1 281 {Reserved} *i4 282 {Reserved} *i4 283} 284 2850x0b "Medium Types Supported" { 286 {Reserved} *i1 287 {Reserved} *i1 288 {Medium type one supported} i1 289 {Medium type two supported} i1 290 {Medium type three supported} i1 291 {Medium type four supported} i1 292} 293 2940x0c "Notch and Partition"; 295 2960x0a,0xf1 "PATA Control"; 297 2980x01 "Read-Write Error Recovery" { 299 {AWRE (Auto Write Reallocation Enbld)} t1 300 {ARRE (Auto Read Reallocation Enbld)} t1 301 {TB (Transfer Block)} t1 302 {RC (Read Continuous)} t1 303 {EER (Enable Early Recovery)} t1 304 {PER (Post Error)} t1 305 {DTE (Disable Transfer on Error)} t1 306 {DCR (Disable Correction)} t1 307 {Read Retry Count} i1 308 {Correction Span} i1 309 {Head Offset Count} i1 310 {Data Strobe Offset Count} i1 311 {LBPERE (LBP Error Reporting Enabled)} t1 312 {MWR (Misaligned Write Reporting)} t2 313 {Reserved} *t5 314 {Write Retry Count} i1 315 {Reserved} *i1 316 {Recovery Time Limit} i2 317} 318 3190x04 "Rigid Disk Drive Geometry" { 320 {Number of Cylinders} i3 321 {Number of Heads} i1 322 {Starting Cylinder-Write Precompensation} i3 323 {Starting Cylinder-Reduced Write Current} i3 324 {Drive Step Rate} i2 325 {Landing Zone Cylinder} i3 326 {Reserved} *t6 327 {RPL} t2 328 {Rotational Offset} i1 329 {Reserved} *i1 330 {Medium Rotation Rate} i2 331 {Reserved} *i1 332 {Reserved} *i1 333} 334 3350x07 "Verify Error Recovery" { 336 {Reserved} *t4 337 {EER} t1 338 {PER} t1 339 {DTE} t1 340 {DCR} t1 341 {Verify Retry Count} i1 342 {Verify Correction Span} i1 343 {Reserved} *i1 344 {Reserved} *i1 345 {Reserved} *i1 346 {Reserved} *i1 347 {Reserved} *i1 348 {Verify Recovery Time Limit} i2 349} 350 3510x0E "CD-ROM Audio Control Parameters" { 352 {Reserved} *t5 353 {Immed} t1 354 {SOTC} t1 355 {Reserved} *t1 356 {Reserved} *i2 357 {APRVal} t1 358 {Reserved} *t3 359 {Format of LBAs / sec.} t4 360 {Logical Blocks per Second of Audio Playback} i2 361 {Reserved} *t4 362 {Output Port 0 Channel Selection} t4 363 {Output Port 0 Volume} i1 364 {Reserved} *t4 365 {Output Port 1 Channel Selection} t4 366 {Output Port 1 Volume} i1 367 {Reserved} *t4 368 {Output Port 2 Channel Selection} t4 369 {Output Port 2 Volume} i1 370 {Reserved} *t4 371 {Output Port 3 Channel Selection} t4 372 {Output Port 3 Volume} i1 373} 374 375# SEQUENTIAL ACCESS DEVICES 3760x10 "Device Configuration" { 377 {Reserved} *t1 378 {Change Active Partition} t1 379 {Change Active Format} t1 380 {Active Format} t5 381 {Active Partition} i1 382 {Write Buffer Full Ratio} i1 383 {Write Buffer Empty Ratio} i1 384 {Write Delay Time} i2 385 {Data Buffer Recovery} t1 386 {Block Identifiers Support} t1 387 {Report Setmarks} t1 388 {Automatic Velocity Control} t1 389 {Stop on Consecutive Filemarks} t2 390 {Recover Buffer Order} t1 391 {Report Early-Warning} t1 392 {Gap Size} i1 393 {EOD Defined} t3 394 {Enable EOD Generation} t1 395 {Synchronize at Early-Warning} t1 396 {Reserved} *t3 397 {Buffer Size at Early-Warning} i3 398 {Select Data Compression Algorithm} i1 399 {Reserved} *t5 400 {SCSI-3 Associated Write Protect} t1 401 {SCSI-3 Persistent Write Protect} t1 402 {SCSI-3 Permanent Write Protect} t1 403} 404 4050x0f "Data Compression" { 406 {Data Compression Enabled} t1 407 {Date Compression Capable} t1 408 {Reserved} *t6 409 {Data Decompression Capable} t1 410 {Data Decompression Report on Exception} t2 411 {Reserved} *t5 412 {Compression Algorithm} i4 413 {Decompression Algorithm} i4 414 {Reserved} *i4 415} 416 417# Removable devices 4180x1b "Removable Block Access Capacities" { 419 {System Floppy Type Device} t1 420 {Supports Reporting Format Progress} t1 421 {Reserved} *t6 422 {Non CD Optical Device} t1 423 {Single or Multiple LUN Supported} t1 424 {Reserved} *t3 425 {Total Logical Units Supported} t3 426 {Reserved} *i8 427} 428 429# CD-ROM (and CD-R[W]) devices 4300x2a "CD capabilities and mechanical status" { 431 {Reserved} *t4 432 {Method 2} t1 433 {CD-RW Read} t1 434 {CD-R Read} t1 435 {Reserved} *t4 436 {Test Write} t1 437 {CD-RW Write} t1 438 {CD-R Write} t1 439 {Reserved} *t1 440 {Multi Session} t1 441 {Mode 2 Form 2} t1 442 {Mode 2 Form 1} t1 443 {Digital Port (2)} t1 444 {Digital Port (1)} t1 445 {Composite} t1 446 {Audio Play} t1 447 {Read Bar Code} t1 448 {UPC} t1 449 {ISRC} t1 450 {C2 Pointers are supported} t1 451 {R-W De-interleaved & corrected} t1 452 {R-W Supported} t1 453 {CD-DA Stream is Accurate} t1 454 {CD-DA Commands Supported} t1 455 {Loading Mechanism Type} t3 456 {Reserved} *t1 457 {Eject} t1 458 {Prevent Jumper} t1 459 {Lock State} t1 460 {Lock} t1 461 {Reserved} *t4 462 {S/W Slot Selection} t1 463 {Changer Supports Disc Present reporting} t1 464 {Separate Channel Mute Supported} t1 465 {Separate volume levels per channel} t1 466 {Maximum Read Speed Supported (kBps)} i2 467 {Number of Volume Leves Supported} i2 468 {Buffer Size supported by Drive (KB)} i2 469 {Current Read Speed Selected (kBps)} i2 470 {Reserved} *i1 471 {Reserved} *t2 472 {Length} t2 473 {LSBF} t1 474 {RCK} t1 475 {BCK} t1 476 {Reserved} *t1 477 {Maximum Write Speed Supported (kBps)} i2 478 {Current Write Speed Supported (kBps)} i2 479}; 480 4810x00 "Vendor-Specific"; 482