1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 22 /* 23 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 */ 26 27 #include <sys/scsi/scsi.h> 28 #include <sys/mtio.h> 29 #include <sys/condvar.h> 30 #include <sys/kstat.h> 31 #include <sys/scsi/targets/stdef.h> 32 33 const char st_conf_version[] = "st_conf.c 1.92 08/10/17"; 34 /* 35 * General 36 * ------- 37 * o MT_DENSITYx counts from 1..4, rather than 0..3. 38 * o Some entries specify a value for the 'length' member that is 39 * less than the actual length of the 'vid' member. This is done 40 * intentionally to allow the comparison to succeed for different 41 * drives. 42 */ 43 44 /* 45 * Drive Tables. 46 * 47 * The structure and option definitions can be 48 * found in <sys/scsi/targets/stdef.h>. 49 * 50 * Note: that blocksize should be a power of two 51 * for fixed-length recording devices. 52 * 53 * Note: the speed codes are unused at present. 54 * The driver turns around whatever is reported 55 * from the drive via the mode sense. 56 * 57 * Note: the read retry and write retry counts 58 * are there to provide a limit until warning 59 * messages are printed. 60 * 61 * 62 * Note: For drives that are not in this table.... 63 * 64 * The first open of the device will cause a MODE SENSE command 65 * to be sent. From that we can determine block size. If block 66 * size is zero, than this drive is in variable-record length 67 * mode. The driver uses the SCSI-2 specification density codes in 68 * order to attempt to determine what kind of sequential access 69 * device this is. This will allow determination of 1/4" cartridge, 70 * 1/2" cartridge, some helical scan (3.81 && 8 mm cartridge) and 71 * 1/2" reel tape devices. The driver will print what it finds and is 72 * assuming to the console. If the device you have hooked up returns 73 * the default density code (0) after power up, the drive cannot 74 * determine what kind of drive it might be, so it will assume that 75 * it is an unknown 1/4" cartridge tape (QIC). 76 * 77 * If the drive is determined in this way to be a 1/2" 9-track reel 78 * type device, an attempt will be mode to put it in Variable 79 * record length mode. 80 * 81 * Generic drives are assumed to support only the long erase option 82 * and will not to be run in buffered mode. 83 */ 84 85 /* 86 * Format for Tape Drive Entry 87 * 88 * Please maintain the format currently in use for defining the properties 89 * associated with each tape drive. This format is intended to make the 90 * entries more readable and help increase the accuracy of the entries. 91 * See the actual entries for examples of what they should look like. 92 * 93 * Important points to note about the format: 94 * 95 * 1. The opening and closing braces are indented 2 spaces. 96 * 2. Each line in the entry is indented 4 spaces. 97 * 3. The numerical values and text in the .options comments are indented two 98 * spaces in the comment block. 99 * 4. The maximum line width is 80 columns; do not exceed this. 100 * 5. The comment delimiters should line up, per the example. 101 * 6. The OR symbol (|) should line up for multiple options. 102 * 7. Hexadecimal values should be capitalized, for consistency. 103 * 8. The leading / in the comment block header is indented 2 spaces and the 104 * susequent *'s should all line up. 105 * 9. Order of the entries is very important. There are several groups of 106 * entries where the last entry in the grouping acts as a catch-all. If you 107 * place an entry after the catch-all, it will never be used by the driver. 108 * 10. TABs should not be used anywhere between the BEGIN CSTYLED and 109 * END CSTYLED lines. 110 */ 111 112 /* 113 * Supported Drive Options 114 * 115 * The descriptions for the supported drive options are taken from stdef.h. 116 * 117 * ST_VARIABLE Device supports variable length record 118 * sizes. 119 * ST_QIC QIC tape device. 120 * ST_REEL 1/2-inch reel tape device. 121 * ST_BSF Device supports backspace file as in 122 * mt(1) bsf backspace over EOF marks. 123 * Devices not supporting bsf will fail 124 * with ENOTTY upon use of bsf. 125 * ST_BSR Device supports backspace record as in 126 * mt(1) bsr : backspace over records. If 127 * the device does not support bsr, the st 128 * driver emulates the action by rewinding 129 * the tape and using forward space file 130 * (fsf) to the correct file and then uses 131 * forward space record (fsr) to the 132 * correct record. 133 * ST_LONG_ERASE Device needs a longer time than normal 134 * to erase. 135 * ST_AUTODEN_OVERRIDE Autodensity override flag Device can 136 * figure out the tape density 137 * automatically,without issuing a mode- 138 * select/mode-sense. 139 * ST_NOBUF Don't use buffered mode. This disables 140 * the device's ability for buffered writes 141 * i.e. The device acknowledges write 142 * completion after the data is written to 143 * the device's buffer, but before all the 144 * data is actually written to tape. 145 * ST_RESERVED_BIT1 Reserved bit parity while talking to it. 146 * ST_KNOWS_EOD Device knows when EOD (End of Data) has 147 * been reached. If the device knows EOD, 148 * st uses fast file skipping. If it does 149 * not know EOD, file skipping happens one 150 * file at a time. 151 * ST_UNLOADABLE Device will not complain if the st 152 * driver is unloaded & loaded again; 153 * e.g. will return the correct inquiry 154 * string. 155 * ST_SOFT_ERROR_REPORTING Do request or log sense on close to 156 * report soft errors.Currently only 157 * Exabyte and DAT drives support this 158 * feature. 159 * ST_LONG_TIMEOUTS Device needs 5 times longer timeouts 160 * for normal operation. 161 * ST_BUFFERED_WRITES The data is buffered in the driver and 162 * pre-acked to the application. 163 * ST_NO_RECSIZE_LIMIT For variable record size devices only. 164 * If flag is set,then don't limit record 165 * size to 64k as in pre-Solaris 2.4 166 * releases. The only limit on the record 167 * size will be the max record size the 168 * device can handle or the max DMA 169 * transfer size of the machine, which ever 170 * is smaller. Beware of incompatabilities 171 * with tapes of pre-Solaris 2.4 OS's 172 * written with large (>64k) block sizes, 173 * as their true block size is a max of 174 * approx 64k. 175 * ST_MODE_SEL_COMP Use mode select of device configuration 176 * page (0x10) to enable/disable 177 * compression instead of density codes 178 * for the "c" and "u" devices. 179 * ST_NO_RESERVE_RELEASE For devices which do not support 180 * RESERVE/RELEASE SCSI command. If this 181 * is enabled then RESERVE/RELEASE would 182 * not be used during open/close for High 183 * Availability. 184 * ST_READ_IGNORE_ILI This flag is only applicable to 185 * variable block devices which support 186 * the SILI bit option. It indicates that 187 * the SILI bit will be ignored during 188 * reads. 189 * ST_READ_IGNORE_EOFS When this flag is set two EOF marks do 190 * not indicate an EOM. This option is 191 * only supported on 1/2" reel tapes. 192 * ST_SHORT_FILEMARKS This option applies only to EXABYTE 8mm 193 * tape drives which support short 194 * filemarks. When this flag is set, short 195 * filemarks will be used for writing 196 * filemarks. 197 * ST_EJECT_ON_CHANGER_FAILURE When this flag is set and the tape is 198 * trapped in the medium changer, the 199 * tape is automatically ejected. 200 * ST_RETRY_ON_RECOVERED_DEFERRED_ERROR This option applies only to IBM MAGSTAR 201 * 3590. If this flag is set, the st 202 * driver will retry the last cmd if the 203 * last error cause a check condition with 204 * error code 0x71 and sense code 0x01. 205 */ 206 207 /* 208 * Values Corresponding To The Supported Drive Options Flags 209 * 210 * ST_VARIABLE 0x000001 211 * ST_QIC 0x000002 212 * ST_REEL 0x000004 213 * ST_BSF 0x000008 214 * ST_BSR 0x000010 215 * ST_LONG_ERASE 0x000020 216 * ST_AUTODEN_OVERRIDE 0x000040 217 * ST_NOBUF 0x000080 218 * ST_RESERVED_BIT1 0x000100 219 * ST_KNOWS_EOD 0x000200 220 * ST_UNLOADABLE 0x000400 221 * ST_SOFT_ERROR_REPORTING 0x000800 222 * ST_LONG_TIMEOUT 0x001000 223 * ST_BUFFERED_WRITES 0x004000 224 * ST_NO_RECSIZE_LIMIT 0x008000 225 * ST_MODE_SEL_COMP 0x010000 226 * ST_NO_RESERVE_RELEASE 0x020000 227 * ST_READ_IGNORE_ILI 0x040000 228 * ST_READ_IGNORE_EOFS 0x080000 229 * ST_SHORT_FILEMARKS 0x100000 230 * ST_EJECT_ON_CHANGER_FAILURE 0x200000 231 * ST_RETRY_ON_RECOVERED_DEFERRED_ERROR 0x400000 232 */ 233 234 const struct st_drivetype st_drivetypes[] = 235 { 236 /* BEGIN CSTYLED */ 237 /* 238 * Anritsu 1/2" reel 239 * 240 * NOTES 241 * ----- 242 * o This is an unsupported drive. 243 * 244 * [1] The Anritsu 1/2" reel has two density codes (or 0 for "default"). 245 * [2] The Anritsu 1/2" reel has only one speed (if the driver ever cares). 246 * [3] max_rretries and max_wretries are driver anachronisms. 247 */ 248 { /* Structure member Description */ 249 /* ---------------- ----------- */ 250 "Unisys 1/2\" Reel", /* .name Display ("pretty") name */ 251 15, /* .length Length of next item... */ 252 "ANRITSU DMT2120", /* .vid Vendor-product ID string */ 253 ST_TYPE_ANRITSU, /* .type Numeric type (cf. mtio.h) */ 254 0, /* .bsize Block size (0 = variable) */ 255 /* .options Drive option flags: */ 256 ST_VARIABLE | /* 00001 Supports variable length */ 257 ST_REEL | /* 00004 1/2-inch reel tape device */ 258 ST_BSF | /* 00008 Supports SPACE block fwd */ 259 ST_BSR | /* 00010 Supports SPACE block rev */ 260 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 261 /* ----- */ 262 /* 0041D */ 263 400, /* .max_rretries [Note 3] */ 264 400, /* .max_wretries [Note 3] */ 265 {0x00, 0x02, 0x03, 0x03}, /* .densities Density codes [Note 1] */ 266 MT_DENSITY2, /* .default_density (.densities[x]) */ 267 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 268 }, 269 270 /* 271 * Archive QIC-150 1/4" cartridge 272 * 273 * NOTES 274 * ----- 275 * o The manual for the Archive drive claims that this drive 276 * can backspace filemarks. In practice this doens't always 277 * seem to be the case. 278 * [1] The QIC-150 uses 0 or "default" density. 279 * [2] The QIC-150 has only one speed (if the driver ever cares). 280 * [3] max_rretries and max_wretries are driver anachronisms. 281 */ 282 { /* Structure member Description */ 283 /* ---------------- ----------- */ 284 "Archive QIC-150", /* .name Display ("pretty") name */ 285 13, /* .length Length of next item... */ 286 "ARCHIVE VIPER", /* .vid Vendor-product ID string */ 287 ST_TYPE_ARCHIVE, /* .type Numeric type (cf. mtio.h) */ 288 512, /* .bsize Block size (0 = variable) */ 289 /* .options Drive option flags: */ 290 ST_QIC | /* 00002 QIC tape device */ 291 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 292 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 293 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 294 /* ----- */ 295 /* 00642 */ 296 400, /* .max_rretries [Note 3] */ 297 400, /* .max_wretries [Note 3] */ 298 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 299 MT_DENSITY2, /* .default_density (.densities[x]) */ 300 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 301 }, 302 303 /* 304 * Archive Python 04106 4mm 2GB drive 305 * 306 * NOTES 307 * ----- 308 * o This is an unsupported drive. 309 * 310 * [1] The Python 04106 has only one density, 0x42 (or 0 for "default"). 311 * [2] The Python 04106 has only one speed (if the driver ever cares). 312 * [3] max_rretries and max_wretries are driver anachronisms. 313 * [4] The manufacturer recommends 0x2c ("MT_ISPYTHON") here, 314 * even though ST_TYPE_PYTHON is recommended. For con- 315 * sistency, let's not fight it. 316 */ 317 { /* Structure member Description */ 318 /* ---------------- ----------- */ 319 "Seagate Scorpion 24 DDS3 DAT", 320 /* .name Display ("pretty") name */ 321 20, /* .length Length of next item... */ 322 "ARCHIVE Python 04106", /* .vid Vendor-product ID string */ 323 MT_ISPYTHON, /* .type Numeric type [Note 4] */ 324 0, /* .bsize Block size (0 = variable) */ 325 /* .options Drive option flags: */ 326 ST_VARIABLE | /* 00001 Supports variable length */ 327 ST_BSF | /* 00008 Supports SPACE block fwd */ 328 ST_BSR | /* 00010 Supports SPACE block rev */ 329 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 330 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 331 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 332 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 333 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 334 /* ----- */ 335 /* 09639 */ 336 400, /* .max_rretries [Note 3] */ 337 400, /* .max_wretries [Note 3] */ 338 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 339 MT_DENSITY3, /* .default_density (.densities[x]) */ 340 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 341 }, 342 343 /* 344 * Archive/Conner CTDX004 4mm DAT 345 * 346 * NOTES 347 * ----- 348 * [1] The CTDX004 uses 0 or the "default" density code. 349 * [2] The CTDX004 has only one speed (if the driver ever cares). 350 * [3] max_rretries and max_wretries are driver anachronisms. 351 * [4] Data is buffered in the driver and pre-acked to the application. This 352 * is only supported in 2.5.1. 353 */ 354 { /* Structure member Description */ 355 /* ---------------- ----------- */ 356 "Archive/Conner CTDX004 4mm DAT", 357 /* .name Display ("pretty") name */ 358 20, /* .length Length of next item... */ 359 "ARCHIVE Python 28388", /* .vid Vendor-product ID string */ 360 ST_TYPE_PYTHON, /* .type Numeric type (cf. mtio.h) */ 361 0, /* .bsize Block size (0 = variable) */ 362 /* .options Drive option flags: */ 363 ST_VARIABLE | /* 00001 Supports variable length */ 364 ST_BSF | /* 00008 Supports SPACE block fwd */ 365 ST_BSR | /* 00010 Supports SPACE block rev */ 366 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 367 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 368 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 369 ST_SOFT_ERROR_REPORTING | /* 00800 Reports errors on close */ 370 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 371 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 372 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 373 /* ----- */ 374 /* 0DE39 */ 375 400, /* .max_rretries [Note 3] */ 376 400, /* .max_wretries [Note 3] */ 377 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 378 MT_DENSITY1, /* .default_density (.densities[x]) */ 379 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 380 }, 381 382 /* 383 * Archive Python 4mm 2GB drive 384 * 385 * NOTES 386 * ----- 387 * o This must be the last entry in the list of Python drives, since it 388 * acts as a catch-all for any Python drive not listed above. 389 * 390 * [1] The Archive Python 4mm has only one density, 0x8c (or 0 for "default"). 391 * [2] The Archive Python 4mm has only one speed (if the driver ever cares). 392 * [3] max_rretries and max_wretries are driver anachronisms. 393 * [4] Do a request or log sense on close to report soft errors. 394 */ 395 { /* Structure member Description */ 396 /* ---------------- ----------- */ 397 "Archive Python 4mm Helical Scan", 398 /* .name Display ("pretty") name */ 399 14, /* .length Length of next item... */ 400 "ARCHIVE Python", /* .vid Vendor-product ID string */ 401 ST_TYPE_PYTHON, /* .type Numeric type (cf. mtio.h) */ 402 0, /* .bsize Block size (0 = variable) */ 403 /* .options Drive option flags: */ 404 ST_VARIABLE | /* 00001 Supports variable length */ 405 ST_BSF | /* 00008 Supports SPACE block fwd */ 406 ST_BSR | /* 00010 Supports SPACE block rev */ 407 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 408 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 409 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 410 ST_SOFT_ERROR_REPORTING | /* 00800 Error reporting [Note 4] */ 411 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 412 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 413 /* ----- */ 414 /* 09E39 */ 415 5000, /* .max_rretries [Note 3] */ 416 5000, /* .max_wretries [Note 3] */ 417 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 418 MT_DENSITY4, /* .default_density (.densities[x]) */ 419 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 420 }, 421 422 /* 423 * Benchmark DLT1 424 * 425 * NOTES 426 * ----- 427 * [1] The DLT1 reads several tape formats, but the st driver supports 428 * only DLT1 native. 429 * [2] The DLT1 has only one speed (if the driver ever cares). 430 * [3] max_rretries and max_wretries are driver anachronisms. 431 * [4] The DLT1 has Density codes that turn on and off compression however 432 * the data compression enable overrides them. 433 */ 434 { /* Structure member Description */ 435 /* ---------------- ----------- */ 436 "Benchmark DLT1", /* .name Display ("pretty") name */ 437 12, /* .length Length of next item... */ 438 "BNCHMARKDLT1", /* .vid Vendor-product ID string */ 439 ST_TYPE_BMDLT1, /* .type Numeric type (cf. mtio.h) */ 440 0, /* .bsize Block size (0 = variable) */ 441 /* .options Drive option flags: */ 442 ST_VARIABLE | /* 00001 Supports variable length */ 443 ST_BSF | /* 00008 Supports SPACE block fwd */ 444 ST_BSR | /* 00010 Supports SPACE block rev */ 445 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 446 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 447 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 448 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 449 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 450 ST_MODE_SEL_COMP, /* 10000 [Note 4] */ 451 /* ----- */ 452 /* 19639 */ 453 -1, /* .max_rretries [Note 3] */ 454 -1, /* .max_wretries [Note 3] */ 455 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 456 MT_DENSITY4, /* .default_density (.densities[x]) */ 457 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 458 }, 459 460 461 462 /* 463 * CDC 1/2" cartridge 464 * 465 * NOTES 466 * ----- 467 * o This is an unsupported drive. 468 * 469 * [1] The CDC 1/2" cartridge uses 0 or the "default" density code. 470 * [2] The CDC 1/2" cartridge has only one speed (if the driver ever cares). 471 * [3] max_rretries and max_wretries are driver anachronisms. 472 */ 473 { /* Structure member Description */ 474 /* ---------------- ----------- */ 475 "CDC 1/2\" Cartridge", /* .name Display ("pretty") name */ 476 3, /* .length Length of next item... */ 477 "LMS", /* .vid Vendor-product ID string */ 478 ST_TYPE_CDC, /* .type Numeric type (cf. mtio.h) */ 479 0, /* .bsize Block size (0 = variable) */ 480 /* .options Drive option flags: */ 481 ST_VARIABLE | /* 00001 Supports variable length */ 482 ST_QIC | /* 0x002 QIC tape device */ 483 ST_BSF | /* 00008 Supports SPACE block fwd */ 484 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 485 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 486 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 487 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 488 /* ----- */ 489 /* 0066B */ 490 300, /* .max_rretries [Note 3] */ 491 300, /* .max_wretries [Note 3] */ 492 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 493 MT_DENSITY2, /* .default_density (.densities[x]) */ 494 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 495 }, 496 497 /* 498 * Emulex MT-02 controller for 1/4" cartridge 499 * 500 * NOTES 501 * ----- 502 * o The EMULEX MT-02 adheres to CCS level 0, and thus 503 * returns nothing of interest for the INQUIRY command 504 * past the 'response data format' field (which will be 505 * zero). The driver will recognize this and assume that 506 * a drive that so responds is actually an MT-02 (there 507 * is no other way to really do this, awkward as it 508 * may seem). 509 * 510 * o This is an unsupported drive. 511 * 512 * [1] Low density is a vendor unique density code. 513 * This gives us 9 Track QIC-11. Supposedly the MT02 can 514 * read 4 Track QIC-11 while in this mode. If that doesn't 515 * work, change one of the duplicated QIC-24 fields to 0x4. 516 * [2] The MT-02 has only one speed (if the driver ever cares). 517 * [3] max_rretries and max_wretries are driver anachronisms. 518 */ 519 { /* Structure member Description */ 520 /* ---------------- ----------- */ 521 "Emulex MT02 QIC-11/QIC-24", 522 /* .name Display ("pretty") name */ 523 12, /* .length Length of next item... */ 524 "Emulex MT02", /* .vid Vendor-product ID string */ 525 ST_TYPE_EMULEX, /* .type Numeric type (cf. mtio.h) */ 526 512, /* .bsize Block size (0 = variable) */ 527 /* .options Drive option flags: */ 528 ST_QIC | /* 00002 QIC tape device */ 529 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 530 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 531 /* ----- */ 532 /* 00602 */ 533 130, /* .max_rretries [Note 3] */ 534 130, /* .max_wretries [Note 3] */ 535 {0x84, 0x05, 0x05, 0x05}, /* .densities Density codes [Note 1] */ 536 MT_DENSITY2, /* .default_density (.densities[x]) */ 537 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 538 }, 539 540 /* 541 * Exabyte 8900 8mm helical scan drive (also called Mammoth) 542 * 543 * NOTES 544 * ----- 545 * [1] Compression on the 8900 is controlled via the Device Configuration mode 546 * page or the Data Compression page (either one). Even when enabled, the 547 * 8900 automatically disables compression on-the-fly if it determines 548 * that it cannot achieve a reasonable compression ratio on the data. 549 * [2] The 8900 can write in only one format, which is selected overtly by 550 * setting Density Code in the block descriptor to 27h; in addition to 551 * this native format, the 8900 can read tapes written in 8200, 8500 and 552 * 8500-compressed formats. We set the density to 27h at all times: we 553 * _can_ do this because the format is changed automatically to match the 554 * data on any previously-written tape; we _must_ do this to ensure that 555 * never-before-written 8900 AME tapes are written in "8900 format" (all 556 * writes to them in any other format will fail). By establishing 557 * MT_DENSITY4 (corresponding to the "c" and "u" minor devices) as the 558 * default, applications which open '/dev/rmt/x' write compressed data 559 * automatically (but see Note [1]). 560 * [3] The 8900 has only one speed (if the driver ever cares). 561 * [4] max_rretries and max_wretries are driver anachronisms. 562 */ 563 { /* Structure member Description */ 564 /* ---------------- ----------- */ 565 "Mammoth EXB-8900 8mm Helical Scan", 566 /* .name Display ("pretty") name */ 567 16, /* .length Length of next item... */ 568 "EXABYTE EXB-8900", /* .vid Vendor-product ID string */ 569 ST_TYPE_EXB8500, /* .type Numeric type (cf. mtio.h) */ 570 0, /* .bsize Block size (0 = variable) */ 571 /* .options Drive option flags: */ 572 ST_VARIABLE | /* 00001 Supports variable length */ 573 ST_BSF | /* 00008 Supports SPACE block fwd */ 574 ST_BSR | /* 00010 Supports SPACE block rev */ 575 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 576 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 577 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 578 ST_SOFT_ERROR_REPORTING | /* 00800 Reports errors on close */ 579 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 580 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 581 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 582 /* ----- */ 583 /* 19E39 */ 584 5000, /* .max_rretries [Note 4] */ 585 5000, /* .max_wretries [Note 4] */ 586 {0x27, 0x27, 0x27, 0x27}, /* .densities Density codes [Note 2] */ 587 MT_DENSITY4, /* .default_density (.densities[x]) */ 588 {0, 0, 0, 0} /* .speeds Speed codes [Note 3] */ 589 }, 590 591 /* 592 * Exabyte 8mm 5GB cartridge 593 * 594 * NOTES 595 * ----- 596 * o ST_KNOWS_EOD here will cause medium error messages 597 * 598 * o The string length (16) has been reduced to 15 to allow for other 599 * compatible models (eg the 8505 half-height) (BugTraq #1091196) 600 * 601 * [1] The density code entry requires four values, even if there are less 602 * than four values for the drive. 603 * [2] The Exabyte EXB-8500 has only one speed (if the driver ever cares). 604 * [3] max_rretries and max_wretries are driver anachronisms. 605 */ 606 { /* Structure member Description */ 607 /* ---------------- ----------- */ 608 "Exabyte EXB-8500 8mm Helical Scan", 609 /* .name Display ("pretty") name */ 610 15, /* .length Length of next item... */ 611 "EXABYTE EXB-850*", /* .vid Vendor-product ID string */ 612 ST_TYPE_EXB8500, /* .type Numeric type (cf. mtio.h) */ 613 0, /* .bsize Block size (0 = variable) */ 614 /* .options Drive option flags: */ 615 ST_VARIABLE | /* 00001 Supports variable length */ 616 ST_BSF | /* 00008 Supports SPACE block fwd */ 617 ST_BSR | /* 00010 Supports SPACE block rev */ 618 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 619 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 620 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 621 ST_SOFT_ERROR_REPORTING | /* 00800 Reports errors on close */ 622 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 623 /* ----- */ 624 /* 08E39 */ 625 5000, /* .max_rretries [Note 3] */ 626 5000, /* .max_wretries [Note 3] */ 627 {0x14, 0x15, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 628 MT_DENSITY2, /* .default_density (.densities[x]) */ 629 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 630 }, 631 632 /* 633 * Exabyte 8mm 2GB cartridge 634 * 635 * NOTES 636 * ----- 637 * [1] The Exabyte EXB-8200 uses 0 or the "default" density code. 638 * [2] The Exabyte EXB-8200 has only one speed (if the driver ever cares). 639 * [3] max_rretries and max_wretries are driver anachronisms. 640 * [4] Do a request or log sense on close to report soft errors. 641 */ 642 { /* Structure member Description */ 643 /* ---------------- ----------- */ 644 "Exabyte EXB-8200 8mm Helical Scan", 645 /* .name Display ("pretty") name */ 646 16, /* .length Length of next item... */ 647 "EXABYTE EXB-8200", /* .vid Vendor-product ID string */ 648 ST_TYPE_EXABYTE, /* .type Numeric type (cf. mtio.h) */ 649 0, /* .bsize Block size (0 = variable) */ 650 /* .options Drive option flags: */ 651 ST_VARIABLE | /* 00001 Supports variable length */ 652 ST_BSF | /* 00008 Supports SPACE block fwd */ 653 ST_BSR | /* 00010 Supports SPACE block rev */ 654 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 655 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 656 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 657 ST_SOFT_ERROR_REPORTING | /* 00800 Error reporting [Note 4] */ 658 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 659 /* ----- */ 660 /* 08C79 */ 661 5000, /* .max_rretries [Note 3] */ 662 5000, /* .max_wretries [Note 3] */ 663 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 664 MT_DENSITY2, /* .default_density (.densities[x]) */ 665 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 666 }, 667 668 /* 669 * Exabyte DC-2000 cartridge 670 * 671 * NOTES 672 * ----- 673 * o This is an unsupported drive. 674 * 675 * o This entry uses a shortened Vendor-product ID string for the 676 * INQUIRY match. 677 * 678 * [1] The Exabyte DC-2000 uses 0 or the "default" density. 679 * [2] The Exabyte DC-2000 has only one speed (if the driver ever cares). 680 * [3] max_rretries and max_wretries are driver anachronisms. 681 */ 682 { /* Structure member Description */ 683 /* ---------------- ----------- */ 684 "Exabyte EXB-2501 QIC", /* .name Display ("pretty") name */ 685 14, /* .length Length of next item... */ 686 "EXABYTE EXB-25**", /* .vid Vendor-product ID string */ 687 ST_TYPE_EXABYTE, /* .type Numeric type (cf. mtio.h) */ 688 1024, /* .bsize Block size (0 = variable) */ 689 /* .options Drive option flags: */ 690 ST_QIC | /* 00002 QIC tape device */ 691 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 692 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 693 /* ----- */ 694 /* 00442 */ 695 400, /* .max_rretries [Note 3] */ 696 400, /* .max_wretries [Note 3] */ 697 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 698 MT_DENSITY2, /* .default_density (.densities[x]) */ 699 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 700 }, 701 702 /* 703 * EXABYTE 4mm Helical Scan 704 * 705 * NOTES 706 * ----- 707 * 708 * o This entry uses a shortened Vendor-product ID string for the 709 * INQUIRY match. 710 * 711 * [1] The EXABYTE 4mm uses 0 or the "default" density code. 712 * [2] The EXABYTE 4mm has only one speed (if the driver ever cares). 713 * [3] max_rretries and max_wretries are driver anachronisms. 714 */ 715 { /* Structure member Description */ 716 /* ---------------- ----------- */ 717 "Exabyte 4mm Helical Scan", 718 /* .name Display ("pretty") name */ 719 15, /* .length Length of next item... */ 720 "EXABYTE EXB-420*", /* .vid Vendor-product ID string */ 721 ST_TYPE_EXABYTE, /* .type Numeric type (cf. mtio.h) */ 722 0, /* .bsize Block size (0 = variable) */ 723 /* .options Drive option flags: */ 724 ST_VARIABLE | /* 00001 Supports variable length */ 725 ST_BSF | /* 00008 Supports SPACE block fwd */ 726 ST_BSR | /* 00010 Supports SPACE block rev */ 727 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 728 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 729 /* ----- */ 730 /* 00439 */ 731 400, /* .max_rretries [Note 3] */ 732 400, /* .max_wretries [Note 3] */ 733 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 734 MT_DENSITY2, /* .default_density (.densities[x]) */ 735 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 736 }, 737 738 /* 739 * Fujitsu 1/2" cartridge 740 * 741 * NOTES 742 * ----- 743 * o This is an unsupported drive. 744 * 745 * [1] The Fujitsu 1/2" drive uses 0 or the "default" density code. 746 * [2] The Fujitsu 1/2" drive has only one speed (if the driver ever cares). 747 * [3] max_rretries and max_wretries are driver anachronisms. 748 */ 749 { /* Structure member Description */ 750 /* ---------------- ----------- */ 751 "Fujitsu 1/2\" Cartridge",/* .name Display ("pretty") name */ 752 2, /* .length Length of next item... */ 753 "\076\000", /* .vid Vendor-product ID string */ 754 ST_TYPE_FUJI, /* .type Numeric type (cf. mtio.h) */ 755 0, /* .bsize Block size (0 = variable) */ 756 /* .options Drive option flags: */ 757 ST_VARIABLE | /* 00001 Supports variable length */ 758 ST_QIC | /* 00002 QIC tape device */ 759 ST_BSF | /* 00008 Supports SPACE block fwd */ 760 ST_BSR | /* 00010 Supports SPACE block rev */ 761 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 762 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 763 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 764 /* ----- */ 765 /* 0063B */ 766 300, /* .max_rretries [Note 3] */ 767 300, /* .max_wretries [Note 3] */ 768 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 769 MT_DENSITY2, /* .default_density (.densities[x]) */ 770 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 771 }, 772 773 /* 774 * HP 1/2" reel 775 * 776 * NOTES 777 * ----- 778 * [1] The HP 1/2" reel uses the vendor unique density '0xC3': 779 * this is compressed 6250 mode. Beware that using large 780 * data sets consisting of repeated data compresses *too* 781 * well and one can run into the unix 2 gb file offset limit 782 * this way. 783 * [2] The HP 1/2" reel has only one speed (if the driver ever cares). 784 * [3] max_rretries and max_wretries are driver anachronisms. 785 */ 786 { /* Structure member Description */ 787 /* ---------------- ----------- */ 788 "HP-88780 1/2\" Reel", /* .name Display ("pretty") name */ 789 13, /* .length Length of next item... */ 790 "HP 88780", /* .vid Vendor-product ID string */ 791 ST_TYPE_HP, /* .type Numeric type (cf. mtio.h) */ 792 0, /* .bsize Block size (0 = variable) */ 793 /* .options Drive option flags: */ 794 ST_VARIABLE | /* 00001 Supports variable length */ 795 ST_REEL | /* 00004 1/2-inch reel tape device */ 796 ST_BSF | /* 00008 Supports SPACE block fwd */ 797 ST_BSR | /* 00010 Supports SPACE block rev */ 798 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 799 /* ----- */ 800 /* 0041D */ 801 400, /* .max_rretries [Note 3] */ 802 400, /* .max_wretries [Note 3] */ 803 {0x01, 0x02, 0x03, 0xC3}, /* .densities Density codes [Note 1] */ 804 MT_DENSITY2, /* .default_density (.densities[x]) */ 805 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 806 }, 807 808 /* 809 * HP 35470A 4mm DAT 810 * 811 * NOTES 812 * ----- 813 * o This is an unsupported drive. 814 * 815 * [1] The HP 35470A uses 0 or the "default" density code. 816 * [2] The HP 35470A has only one speed (if the driver ever cares). 817 * [3] max_rretries and max_wretries are driver anachronisms. 818 */ 819 { /* Structure member Description */ 820 /* ---------------- ----------- */ 821 "HP 35470A 4mm DAT", /* .name Display ("pretty") name */ 822 16, /* .length Length of next item... */ 823 "HP HP35470A", /* .vid Vendor-product ID string */ 824 ST_TYPE_DAT, /* .type Numeric type (cf. mtio.h) */ 825 0, /* .bsize Block size (0 = variable) */ 826 /* .options Drive option flags: */ 827 ST_VARIABLE | /* 00001 Supports variable length */ 828 ST_BSF | /* 00008 Supports SPACE block fwd */ 829 ST_BSR | /* 00010 Supports SPACE block rev */ 830 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 831 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 832 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 833 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 834 ST_LONG_TIMEOUTS, /* 01000 More time for some ops */ 835 /* ----- */ 836 /* 01679 */ 837 400, /* .max_rretries [Note 3] */ 838 400, /* .max_wretries [Note 3] */ 839 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 840 MT_DENSITY2, /* .default_density (.densities[x]) */ 841 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 842 }, 843 844 /* 845 * HP 35480A 4mm DAT 846 * 847 * NOTES 848 * ----- 849 * o This is an unsupported drive. 850 * 851 * [1] The HP 35480A uses 0 or the "default" density code. 852 * [2] The HP 35480A has only one speed (if the driver ever cares). 853 * [3] max_rretries and max_wretries are driver anachronisms. 854 */ 855 { /* Structure member Description */ 856 /* ---------------- ----------- */ 857 "HP 35480A 4mm DAT", /* .name Display ("pretty") name */ 858 16, /* .length Length of next item... */ 859 "HP HP35480A", /* .vid Vendor-product ID string */ 860 ST_TYPE_DAT, /* .type Numeric type (cf. mtio.h) */ 861 0, /* .bsize Block size (0 = variable) */ 862 /* .options Drive option flags: */ 863 ST_VARIABLE | /* 00001 Supports variable length */ 864 ST_BSF | /* 00008 Supports SPACE block fwd */ 865 ST_BSR | /* 00010 Supports SPACE block rev */ 866 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 867 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 868 /* ----- */ 869 /* 00439 */ 870 400, /* .max_rretries [Note 1] */ 871 400, /* .max_wretries [Note 1] */ 872 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 2] */ 873 MT_DENSITY2, /* .default_density (.densities[x]) */ 874 {0, 0, 0, 0} /* .speeds Speed codes [Note 3] */ 875 }, 876 877 /* 878 * HP JetStore 6000 C1533 879 * 880 * NOTES 881 * ----- 882 * o This is only supported for x86. 883 * 884 * [1] The HP JetStore 6000 uses 0 or the "default" density code. 885 * [2] The HP JetStore 6000 has only one speed (if the driver ever cares). 886 * [3] max_rretries and max_wretries are driver anachronisms. 887 */ 888 { /* Structure member Description */ 889 /* ---------------- ----------- */ 890 "HP JetStore 6000 C1533", /* .name Display ("pretty") name */ 891 14, /* .length Length of next item... */ 892 "HP C1533A", /* .vid Vendor-product ID string */ 893 ST_TYPE_DAT, /* .type Numeric type (cf. mtio.h) */ 894 0, /* .bsize Block size (0 = variable) */ 895 /* .options Drive option flags: */ 896 ST_VARIABLE | /* 00001 Supports variable length */ 897 ST_BSF | /* 00008 Supports SPACE block fwd */ 898 ST_BSR | /* 00010 Supports SPACE block rev */ 899 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 900 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 901 /* ----- */ 902 /* 00639 */ 903 400, /* .max_rretries [Note 3] */ 904 400, /* .max_wretries [Note 3] */ 905 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 906 MT_DENSITY2, /* .default_density (.densities[x]) */ 907 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 908 }, 909 910 /* 911 * HP DDS-3 4mm DAT 912 * 913 * NOTES 914 * ----- 915 * o This is an unsupported drive. 916 * 917 * [1] Compression on the HP DDS-3 is controlled 918 * via the Device Configuration mode page. 919 * [2] The HP DDS-3 has only one density, 0x8c (or 0 for "default"). 920 * [3] The HP DDS-3 has only one speed (if the driver ever cares). 921 * [4] max_rretries and max_wretries are driver anachronisms. 922 */ 923 { /* Structure member Description */ 924 /* ---------------- ----------- */ 925 "HP DDS-3 4MM DAT", /* .name Display ("pretty") name */ 926 14, /* .length Length of next item... */ 927 "HP C1537A", /* .vid Vendor-product ID string */ 928 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 929 0, /* .bsize Block size (0 = variable) */ 930 /* .options Drive option flags: */ 931 ST_VARIABLE | /* 00001 Supports variable length */ 932 ST_BSF | /* 00008 Supports SPACE block fwd */ 933 ST_BSR | /* 00010 Supports SPACE block rev */ 934 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 935 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 936 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 937 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 938 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 939 /* ----- */ 940 /* 09639 */ 941 400, /* .max_rretries [Note 4] */ 942 400, /* .max_wretries [Note 4] */ 943 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 2] */ 944 MT_DENSITY2, /* .default_density (.densities[x]) */ 945 {0, 0, 0, 0} /* .speeds Speed codes [Note 3] */ 946 }, 947 948 /* 949 * HP DDS-3 4mm DAT loader 950 * 951 * NOTES 952 * ----- 953 * o This is an unsupported drive. 954 * 955 * [1] Compression on the DDS-3 Loader is controlled 956 * via the Device Configuration mode page. 957 * [2] The DDS-3 Loader has only one density, 0x8c (or 0 for "default"). 958 * [3] The DDS-3 Loader has only one speed (if the driver ever cares). 959 * [4] max_rretries and max_wretries are driver anachronisms. 960 */ 961 { /* Structure member Description */ 962 /* ---------------- ----------- */ 963 "HP DDS-3 4MM DAT loader",/* .name Display ("pretty") name */ 964 14, /* .length Length of next item... */ 965 "HP C1557A", /* .vid Vendor-product ID string */ 966 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 967 0, /* .bsize Block size (0 = variable) */ 968 /* .options Drive option flags: */ 969 ST_VARIABLE | /* 00001 Supports variable length */ 970 ST_BSF | /* 00008 Supports SPACE block fwd */ 971 ST_BSR | /* 00010 Supports SPACE block rev */ 972 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 973 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 974 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 975 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 976 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 977 /* ----- */ 978 /* 09639 */ 979 400, /* .max_rretries [Note 4] */ 980 400, /* .max_wretries [Note 4] */ 981 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 2] */ 982 MT_DENSITY2, /* .default_density (.densities[x]) */ 983 {0, 0, 0, 0} /* .speeds Speed codes [Note 3] */ 984 }, 985 986 /* 987 * HP C5683A DDS-4 DAT drives with Sun-specific behavior 988 * 989 * When the configuration switches on the drive are set appropriately, the 990 * HP C5683A: interprets a density code of 8Ch to mean "enable compression", 991 * 00h to mean "disable compression"; senses the tape type automatically; 992 * adjusts to match the tape type. (That is, compression is controlled via 993 * the Sun-unique 8Ch density code, rather than using the Data Compression 994 * mode page). 995 * 996 * NOTES 997 * ----- 998 * [1] 00h = compression disabled, 8Ch = compression enabled, and all DDS-x 999 * format-related adjustments are performed automatically by the drive. 1000 * [2] The 5683 has only one speed (if the driver ever cares). 1001 * [3] max_rretries and max_wretries are driver anachronisms. 1002 */ 1003 { /* Structure member Description */ 1004 /* ---------------- ----------- */ 1005 "HP DDS-4 DAT (Sun)", /* .name Display ("pretty") name */ 1006 14, /* .length Length of next item... */ 1007 "HP C5683A", /* .vid Vendor-product ID string */ 1008 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1009 0, /* .bsize Block size (0 = variable) */ 1010 /* .options Drive option flags: */ 1011 ST_VARIABLE | /* 00001 Supports variable length */ 1012 ST_BSF | /* 00008 Supports SPACE block fwd */ 1013 ST_BSR | /* 00010 Supports SPACE block rev */ 1014 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 1015 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1016 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1017 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1018 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1019 /* ----- */ 1020 /* 09639 */ 1021 -1, /* .max_rretries [Note 3] */ 1022 -1, /* .max_wretries [Note 3] */ 1023 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 1024 MT_DENSITY2, /* .default_density (.densities[x]) */ 1025 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1026 }, 1027 1028 /* 1029 * HP C5713A DDS-4 DAT autochangers with Sun-specific behavior 1030 * 1031 * When the configuration switches on the drive are set appropriately, the 1032 * HP C5713A: interprets a density code of 8Ch to mean "enable compression", 1033 * 00h to mean "disable compression"; senses the tape type automatically; 1034 * adjusts to match the tape type. (That is, compression is controlled via 1035 * the Sun-unique 8Ch density code, rather than using the Data Compression 1036 * mode page). 1037 * 1038 * NOTES 1039 * ----- 1040 * [1] 00h = compression disabled, 8Ch = compression enabled, and all DDS-x 1041 * format-related adjustments are performed automatically by the drive. 1042 * [2] The 5713 has only one speed (if the driver ever cares). 1043 * [3] max_rretries and max_wretries are driver anachronisms. 1044 */ 1045 { /* Structure member Description */ 1046 /* ---------------- ----------- */ 1047 "HP DDS-4 DAT (Sun)", /* .name Display ("pretty") name */ 1048 14, /* .length Length of next item... */ 1049 "HP C5713A", /* .vid Vendor-product ID string */ 1050 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1051 0, /* .bsize Block size (0 = variable) */ 1052 /* .options Drive option flags: */ 1053 ST_VARIABLE | /* 00001 Supports variable length */ 1054 ST_BSF | /* 00008 Supports SPACE block fwd */ 1055 ST_BSR | /* 00010 Supports SPACE block rev */ 1056 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 1057 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1058 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1059 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1060 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1061 /* ----- */ 1062 /* 09639 */ 1063 -1, /* .max_rretries [Note 3] */ 1064 -1, /* .max_wretries [Note 3] */ 1065 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 1066 MT_DENSITY2, /* .default_density (.densities[x]) */ 1067 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1068 }, 1069 1070 /* 1071 * HP C7438A 1072 */ 1073 { /* Structure member Description */ 1074 /* ---------------- ----------- */ 1075 "HP DAT-72", /* .name Display ("pretty") name */ 1076 14, /* .length Length of next item... */ 1077 "HP C7438A", /* .vid Vendor-product ID string */ 1078 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1079 0, /* .bsize Block size (0 = variable) */ 1080 /* .options Drive option flags: */ 1081 ST_VARIABLE | /* 00001 Supports variable length */ 1082 ST_BSF | /* 00008 Supports SPACE block fwd */ 1083 ST_BSR | /* 00010 Supports SPACE block rev */ 1084 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1085 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1086 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1087 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1088 /* ----- */ 1089 /* 18619 */ 1090 -1, /* .max_rretries Not Used */ 1091 -1, /* .max_wretries Not Used */ 1092 {0x47, 0x47, 0x47, 0x47}, /* .densities Density codes */ 1093 MT_DENSITY4, /* .default_density (.densities[x]) */ 1094 {0, 0, 0, 0}, /* .speeds Speed codes Not Used */ 1095 0, /* .non_motion_timeout Nothing Special */ 1096 MINUTES(7), /* .io_timeout 7 minutes (recover read) */ 1097 0, /* .rewind_timeout Nothing Special */ 1098 MINUTES(600), /* .space_timeout 10 Hours (space seq file)*/ 1099 0, /* .load_timeout Nothing Special */ 1100 0, /* .unload_timeout Nothing Special */ 1101 MINUTES(290) /* .erase_timeout 4 hours 50 minutes */ 1102 }, 1103 1104 /* 1105 * HP DAT-160 1106 */ 1107 { /* Structure member Description */ 1108 /* ---------------- ----------- */ 1109 "HP DDS-6 DAT", /* .name Display ("pretty") name */ 1110 14, /* .length Length of next item... */ 1111 "HP DAT160", /* .vid Vendor-product ID string */ 1112 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1113 0, /* .bsize Block size (0 = variable) */ 1114 /* .options Drive option flags: */ 1115 ST_VARIABLE | /* 00001 Supports variable length */ 1116 ST_BSF | /* 00008 Supports SPACE block fwd */ 1117 ST_BSR | /* 00010 Supports SPACE block rev */ 1118 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1119 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1120 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1121 ST_MODE_SEL_COMP | /* 10000 Mode select compression */ 1122 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 1123 /* ------- */ 1124 /* 1018619 */ 1125 -1, /* .max_rretries Not Used */ 1126 -1, /* .max_wretries Not Used */ 1127 {0x48, 0x48, 0x48, 0x48}, /* .densities Density codes */ 1128 MT_DENSITY4, /* .default_density (.densities[x]) */ 1129 {0, 0, 0, 0}, /* .speeds Speed codes Not Used */ 1130 0, /* .non_motion_timeout Nothing Special */ 1131 MINUTES(5), /* .io_timeout */ 1132 MINUTES(10), /* .rewind_timeout */ 1133 MINUTES(20), /* .space_timeout */ 1134 MINUTES(10), /* .load_timeout */ 1135 MINUTES(10), /* .unload_timeout */ 1136 MINUTES(300) /* .erase_timeout 5 hours */ 1137 }, 1138 1139 /* 1140 * HP Ultrium LTO Gen 4 1141 * [1] This drive supports two densites at this time. 1142 * In reality the type of media GEN 3 or GEN 4 selects the density. 1143 * ST_MODE_SEL_COMP controls compression. 1144 * [2] The Ultrium LTO has one speed. 1145 * [3] max_rretries and max_wretries are not used but kept for 1146 * backward compatibility. 1147 */ 1148 { /* Structure member Description */ 1149 /* ---------------- ----------- */ 1150 "HP Ultrium LTO 4", /* .name Display ("pretty") name */ 1151 17, /* .length Length of next item... */ 1152 "HP Ultrium 4*", /* .vid handles SCSI or FC */ 1153 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1154 0, /* .bsize Block size (0 = variable) */ 1155 /* .options Drive option flags: */ 1156 ST_VARIABLE | /* 0000001 Supports variable length */ 1157 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1158 ST_BSR | /* 0000010 Supports SPACE block rev */ 1159 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1160 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1161 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1162 ST_MODE_SEL_COMP | /* 0010000 Mode select compression */ 1163 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 1164 /* ------- */ 1165 /* 1018619 */ 1166 -1, /* .max_rretries [Note 3] */ 1167 -1, /* .max_wretries [Note 3] */ 1168 {0x44, 0x44, 0x46, 0x46}, /* .densities Density codes [Note 1] */ 1169 MT_DENSITY4, /* .default_density (.densities[x]) */ 1170 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1171 MINUTES(1), /* .non_motion_timeout */ 1172 MINUTES(20), /* .io_timeout */ 1173 MINUTES(10), /* .rewind_timeout */ 1174 MINUTES(20), /* .space_timeout */ 1175 MINUTES(10), /* .load_timeout */ 1176 MINUTES(10), /* .unload_timeout */ 1177 MINUTES(300) /* .erase_timeout Five Hours */ 1178 }, 1179 1180 /* 1181 * HP Ultrium LTO Gen 3 1182 * [1] This drive supports two densites at this time. 1183 * In reality the type of media GEN 2 or GEN 3 selects the density. 1184 * ST_MODE_SEL_COMP controls compression. 1185 * [2] The Ultrium LTO has one speed. 1186 * [3] max_rretries and max_wretries are not used but kept for 1187 * backward compatibility. 1188 */ 1189 { /* Structure member Description */ 1190 /* ---------------- ----------- */ 1191 "HP Ultrium LTO 3", /* .name Display ("pretty") name */ 1192 17, /* .length Length of next item... */ 1193 "HP Ultrium 3*", /* .vid handles SCSI or FC */ 1194 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1195 0, /* .bsize Block size (0 = variable) */ 1196 /* .options Drive option flags: */ 1197 ST_VARIABLE | /* 0000001 Supports variable length */ 1198 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1199 ST_BSR | /* 0000010 Supports SPACE block rev */ 1200 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1201 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1202 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1203 ST_MODE_SEL_COMP | /* 0010000 Mode select compression */ 1204 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 1205 /* ------- */ 1206 /* 1018619 */ 1207 -1, /* .max_rretries [Note 3] */ 1208 -1, /* .max_wretries [Note 3] */ 1209 {0x42, 0x42, 0x44, 0x44}, /* .densities Density codes [Note 1] */ 1210 MT_DENSITY4, /* .default_density (.densities[x]) */ 1211 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1212 MINUTES(1), /* .non_motion_timeout */ 1213 MINUTES(20), /* .io_timeout */ 1214 MINUTES(10), /* .rewind_timeout */ 1215 MINUTES(20), /* .space_timeout */ 1216 MINUTES(10), /* .load_timeout */ 1217 MINUTES(10), /* .unload_timeout */ 1218 MINUTES(300) /* .erase_timeout Five Hours */ 1219 }, 1220 1221 /* 1222 * HP Ultrium LTO Gen 2 1223 * [1] This drive supports two densites at this time. 1224 * In reality the type of media GEN 1 or GEN 2 selects the density. 1225 * ST_MODE_SEL_COMP controls compression. 1226 * [2] The Ultrium LTO has one speed. 1227 * [3] max_rretries and max_wretries are not used but kept for 1228 * backward compatibility. 1229 */ 1230 { /* Structure member Description */ 1231 /* ---------------- ----------- */ 1232 "HP Ultrium LTO 2", /* .name Display ("pretty") name */ 1233 17, /* .length Length of next item... */ 1234 "HP Ultrium 2*", /* .vid handles SCSI or FC */ 1235 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1236 0, /* .bsize Block size (0 = variable) */ 1237 /* .options Drive option flags: */ 1238 ST_VARIABLE | /* 00001 Supports variable length */ 1239 ST_BSF | /* 00008 Supports SPACE block fwd */ 1240 ST_BSR | /* 00010 Supports SPACE block rev */ 1241 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1242 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1243 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1244 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1245 /* ----- */ 1246 /* 18619 */ 1247 -1, /* .max_rretries [Note 3] */ 1248 -1, /* .max_wretries [Note 3] */ 1249 {0x40, 0x40, 0x42, 0x42}, /* .densities Density codes [Note 1] */ 1250 MT_DENSITY4, /* .default_density (.densities[x]) */ 1251 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1252 MINUTES(10), /* .non_motion_timeout */ 1253 MINUTES(5), /* .io_timeout Four */ 1254 MINUTES(10), /* .rewind_timeout */ 1255 MINUTES(20), /* .space_timeout */ 1256 MINUTES(10), /* .load_timeout */ 1257 MINUTES(10), /* .unload_timeout */ 1258 MINUTES(300) /* .erase_timeout Five Hours */ 1259 }, 1260 1261 /* 1262 * HP Ultrium LTO 1263 * [1] This drive supports only one density at this time. 1264 ST_MODE_SEL_COMP controls compression. 1265 * [2] The Ultrium LTO has one speed. 1266 * [3] max_rretries and max_wretries are not used but kept for 1267 * backward compatibility. 1268 */ 1269 { /* Structure member Description */ 1270 /* ---------------- ----------- */ 1271 "HP Ultrium LTO", /* .name Display ("pretty") name */ 1272 17, /* .length Length of next item... */ 1273 "HP Ultrium 1*", /* .vid handles SCSI and FC */ 1274 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1275 0, /* .bsize Block size (0 = variable) */ 1276 /* .options Drive option flags: */ 1277 ST_VARIABLE | /* 00001 Supports variable length */ 1278 ST_BSF | /* 00008 Supports SPACE block fwd */ 1279 ST_BSR | /* 00010 Supports SPACE block rev */ 1280 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1281 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1282 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1283 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1284 /* ----- */ 1285 /* 18619 */ 1286 -1, /* .max_rretries [Note 3] */ 1287 -1, /* .max_wretries [Note 3] */ 1288 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 1289 MT_DENSITY4, /* .default_density (.densities[x]) */ 1290 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1291 MINUTES(1), /* .non_motion_timeout */ 1292 MINUTES(5), /* .io_timeout Four */ 1293 MINUTES(10), /* .rewind_timeout */ 1294 MINUTES(20), /* .space_timeout */ 1295 MINUTES(10), /* .load_timeout */ 1296 MINUTES(10), /* .unload_timeout */ 1297 MINUTES(300) /* .erase_timeout Five Hours */ 1298 }, 1299 1300 /* 1301 * Kennedy 1/2" reel 1302 * 1303 * NOTES 1304 * ----- 1305 * o This is an unsupported drive. 1306 * 1307 * o This entry uses a shortened Vendor-product ID string for the 1308 * INQUIRY match. 1309 * 1310 * [1] The density code entry requires four values, even if there are less 1311 * than four values for the drive. 1312 * [2] The Kennedy 1/2" reel has only one speed (if the driver ever cares). 1313 * [3] max_rretries and max_wretries are driver anachronisms. 1314 */ 1315 { /* Structure member Description */ 1316 /* ---------------- ----------- */ 1317 "Kennedy 1/2\" Reel", /* .name Display ("pretty") name */ 1318 4, /* .length Length of next item... */ 1319 "KENN***", /* .vid Vendor-product ID string */ 1320 ST_TYPE_KENNEDY, /* .type Numeric type (cf. mtio.h) */ 1321 0, /* .bsize Block size (0 = variable) */ 1322 /* .options Drive option flags: */ 1323 ST_VARIABLE | /* 00001 Supports variable length */ 1324 ST_REEL | /* 00004 1/2-inch reel tape device */ 1325 ST_BSF | /* 00008 Supports SPACE block fwd */ 1326 ST_BSR | /* 00010 Supports SPACE block rev */ 1327 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 1328 /* ----- */ 1329 /* 0041D */ 1330 400, /* .max_rretries [Note 3] */ 1331 400, /* .max_wretries [Note 3] */ 1332 {0x01, 0x02, 0x03, 0x03}, /* .densities Density codes [Note 1] */ 1333 MT_DENSITY2, /* .default_density (.densities[x]) */ 1334 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1335 }, 1336 1337 /* 1338 * M4 Data Systems 9303 transport with 9700 512k i/f 1339 * 1340 * NOTES 1341 * ----- 1342 * o The M4 Data 9303 is in non-buffered mode because it doesn't 1343 * flush the buffer at end of tape writes. If you don't care 1344 * about end of tape conditions (e.g., you use dump(8) which 1345 * cannot handle end-of-tape anyhow), take out the ST_NOBUF. 1346 * 1347 * o This is an unsupported drive. 1348 * 1349 * [1] The density code entry requires four values, even if there are less 1350 * than four values for the drive. 1351 * [2] The M4 Data has only one speed (if the driver ever cares). 1352 * [3] max_rretries and max_wretries are driver anachronisms. 1353 */ 1354 { /* Structure member Description */ 1355 /* ---------------- ----------- */ 1356 "M4-Data 1/2\" Reel", /* .name Display ("pretty") name */ 1357 19, /* .length Length of next item... */ 1358 "M4 DATA 123107 SCSI", /* .vid Vendor-product ID string */ 1359 ST_TYPE_REEL, /* .type Numeric type (cf. mtio.h) */ 1360 0, /* .bsize Block size (0 = variable) */ 1361 /* .options Drive option flags: */ 1362 ST_VARIABLE | /* 00001 Supports variable length */ 1363 ST_REEL | /* 00004 1/2-inch reel tape device */ 1364 ST_BSF | /* 00008 Supports SPACE block fwd */ 1365 ST_BSR | /* 00010 Supports SPACE block rev */ 1366 ST_NOBUF | /* 00080 Don't use buffered mode. */ 1367 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 1368 /* ----- */ 1369 /* 0049D */ 1370 500, /* .max_rretries [Note 3] */ 1371 500, /* .max_wretries [Note 3] */ 1372 {0x01, 0x02, 0x06, 0x06}, /* .densities Density codes [Note 1] */ 1373 MT_DENSITY2, /* .default_density (.densities[x]) */ 1374 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1375 }, 1376 1377 /* 1378 * Quantum VS 160 1379 * 1380 * Notes 1381 * [1] The VS160 reads several formats which the drive autodetects. 1382 * It can write only in VS160 format so all densities set ro 0x50. 1383 * [2] The speed field is not used and the VS160's speed is not setable. 1384 * [3] Retry counts are not used any more and set to -1. 1385 */ 1386 { /* Structure member Description */ 1387 /* ---------------- ----------- */ 1388 "Quantum VS160", /* .name Display ("pretty") name */ 1389 17, /* .length Length of next item... */ 1390 "QUANTUM DLT VS160", /* .vid Vendor-product ID string */ 1391 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1392 0, /* .bsize Block size (0 = variable) */ 1393 /* .options Drive option flags: */ 1394 ST_VARIABLE | /* 00001 Supports variable length */ 1395 ST_BSF | /* 00008 Supports SPACE block fwd */ 1396 ST_BSR | /* 00010 Supports SPACE block rev */ 1397 ST_AUTODEN_OVERRIDE | /* 00040 Has only one density */ 1398 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1399 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1400 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1401 ST_MODE_SEL_COMP, /* 10000 Uses Mode select Compress */ 1402 /* -------- */ 1403 /* 00018659 */ 1404 -1, /* .max_rretries [Note 3] */ 1405 -1, /* .max_wretries [Note 3] */ 1406 {0x50, 0x50, 0x50, 0x50}, /* .densities [Note 1] */ 1407 MT_DENSITY4, /* .default_density (.densities[x]) */ 1408 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1409 MINUTES(2), /* .non_motion_timeout Nothing special */ 1410 MINUTES(15), /* .io_timeout First write to new tape */ 1411 MINUTES(15), /* .rewind_timeout 15 minutes */ 1412 MINUTES(15), /* .space_timeout 15 minutes */ 1413 MINUTES(15), /* .load_timeout read catalog */ 1414 MINUTES(15), /* .unload_timeout write catalog + unthread */ 1415 MINUTES(180) /* .erase_timeout 3 hours */ 1416 }, 1417 /* 1418 * Quantum Super DLT600 1419 * 1420 * NOTES 1421 * ----- 1422 * 1423 * [1] The Super DLT 600 supports many tape formats, Most are media selected. 1424 * Previous DLT drives had density codes for compress and non-compress, 1425 This drive uses mode select to control compression. 1426 * [2] The Super DLT has only one speed (if the driver ever cares). 1427 * [3] max_rretries and max_wretries are driver anachronisms. 1428 */ 1429 { /* Structure member Description */ 1430 /* ---------------- ----------- */ 1431 "Quantum Super DLT 600", /* .name Display ("pretty") name */ 1432 15, /* .length Length of next item... */ 1433 "QUANTUM SDLT600", /* .vid Vendor-product ID string */ 1434 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1435 0, /* .bsize Block size (0 = variable) */ 1436 /* .options Drive option flags: */ 1437 ST_VARIABLE | /* 0000001 Supports variable length */ 1438 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1439 ST_BSR | /* 0000010 Supports SPACE block rev */ 1440 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1441 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1442 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1443 ST_MODE_SEL_COMP | /* 0010000 Uses Mode select Compress */ 1444 ST_WORMABLE, /* 1000000 Is capable of WORM */ 1445 /* ------- */ 1446 /* 1018619 */ 1447 -1, /* .max_rretries [Note 3] */ 1448 -1, /* .max_wretries [Note 3] */ 1449 {0x4a, 0x4a, 0x4a, 0x4a}, /* .densities [Note 1] */ 1450 MT_DENSITY4, /* .default_density (.densities[x]) */ 1451 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1452 0, /* .non_motion_timeout Nothing special */ 1453 MINUTES(60), /* .io_timeout Four One Hour */ 1454 MINUTES(4), /* .rewind_timeout Four Minutes */ 1455 MINUTES(360), /* .space_timeout 6 Hour if Directory bad */ 1456 MINUTES(16), /* .load_timeout Nothing Special */ 1457 MINUTES(16), /* .unload_timeout Nothing Special */ 1458 MINUTES(360) /* .erase_timeout Six hours */ 1459 }, 1460 1461 /* 1462 * Quantum Super DLT320 1463 * 1464 * NOTES 1465 * ----- 1466 * o There is not going to be a SUN version of this drive. It will 1467 * be released as QUANTUM only. 1468 * 1469 * [1] The Super DLT implements many tape formats, but the st driver supports 1470 * only the four highest densities. 1471 * [2] The Super DLT has only one speed (if the driver ever cares). 1472 * [3] max_rretries and max_wretries are driver anachronisms. 1473 */ 1474 { /* Structure member Description */ 1475 /* ---------------- ----------- */ 1476 "Quantum Super DLT 320", /* .name Display ("pretty") name */ 1477 15, /* .length Length of next item... */ 1478 "QUANTUM SDLT320", /* .vid Vendor-product ID string */ 1479 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1480 0, /* .bsize Block size (0 = variable) */ 1481 /* .options Drive option flags: */ 1482 ST_VARIABLE | /* 00001 Supports variable length */ 1483 ST_BSF | /* 00008 Supports SPACE block fwd */ 1484 ST_BSR | /* 00010 Supports SPACE block rev */ 1485 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1486 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1487 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1488 /* -------- */ 1489 /* 00008619 */ 1490 -1, /* .max_rretries [Note 3] */ 1491 -1, /* .max_wretries [Note 3] */ 1492 {0x90, 0x91, 0x92, 0x93}, /* .densities [Note 1] */ 1493 MT_DENSITY4, /* .default_density (.densities[x]) */ 1494 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1495 0, /* .non_motion_timeout Default 2 minutes */ 1496 MINUTES(60), /* .io_timeout Four Now 1 hour */ 1497 MINUTES(4), /* .rewind_timeout Four Minutes */ 1498 MINUTES(360), /* .space_timeout Six Hours */ 1499 MINUTES(16), /* .load_timeout Sixteen Minutes */ 1500 MINUTES(16), /* .unload_timeout Sixteen Minutes */ 1501 MINUTES(360) /* .erase_timeout Six hours */ 1502 }, 1503 1504 /* 1505 * Quantum Super DLT 1506 * 1507 * NOTES 1508 * ----- 1509 * o There is not going to be a SUN version of this drive. It will 1510 * be released as QUANTUM only. 1511 * 1512 * [1] The Super DLT implements many tape formats, but the st driver supports 1513 * only the four highest densities. 1514 * [2] The Super DLT has only one speed (if the driver ever cares). 1515 * [3] max_rretries and max_wretries are driver anachronisms. 1516 */ 1517 { /* Structure member Description */ 1518 /* ---------------- ----------- */ 1519 "Quantum Super DLT 220", /* .name Display ("pretty") name */ 1520 17, /* .length Length of next item... */ 1521 "QUANTUM SuperDLT1", /* .vid Vendor-product ID string */ 1522 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1523 0, /* .bsize Block size (0 = variable) */ 1524 /* .options Drive option flags: */ 1525 ST_VARIABLE | /* 00001 Supports variable length */ 1526 ST_BSF | /* 00008 Supports SPACE block fwd */ 1527 ST_BSR | /* 00010 Supports SPACE block rev */ 1528 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1529 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1530 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1531 /* -------- */ 1532 /* 00008619 */ 1533 -1, /* .max_rretries [Note 3] */ 1534 -1, /* .max_wretries [Note 3] */ 1535 {0x88, 0x89, 0x90, 0x91}, /* .densities [Note 1] */ 1536 MT_DENSITY4, /* .default_density (.densities[x]) */ 1537 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1538 0, /* .non_motion_timeout Default 2 minutes */ 1539 MINUTES(60), /* .io_timeout Four Now 1 hour */ 1540 MINUTES(4), /* .rewind_timeout Four Minutes */ 1541 MINUTES(360), /* .space_timeout Six Hours */ 1542 MINUTES(16), /* .load_timeout Sixteen Minutes */ 1543 MINUTES(16), /* .unload_timeout Sixteen Minutes */ 1544 MINUTES(360) /* .erase_timeout Six hours */ 1545 }, 1546 1547 /* 1548 * Quantum DLT8000 1549 * 1550 * NOTES 1551 * ----- 1552 * o There is not going to be a SUN version of this drive. It will 1553 * be released as QUANTUM only. 1554 * 1555 * [1] The DLT8000 implements many tape formats, but the st driver supports 1556 * only the four highest densities. 1557 * [2] The DLT8000 has only one speed (if the driver ever cares). 1558 * [3] max_rretries and max_wretries are driver anachronisms. 1559 */ 1560 { /* Structure member Description */ 1561 /* ---------------- ----------- */ 1562 "Quantum DLT8000", /* .name Display ("pretty") name */ 1563 15, /* .length Length of next item... */ 1564 "QUANTUM DLT8000", /* .vid Vendor-product ID string */ 1565 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1566 0, /* .bsize Block size (0 = variable) */ 1567 /* .options Drive option flags: */ 1568 ST_VARIABLE | /* 00001 Supports variable length */ 1569 ST_BSF | /* 00008 Supports SPACE block fwd */ 1570 ST_BSR | /* 00010 Supports SPACE block rev */ 1571 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1572 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1573 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1574 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1575 ST_CLN_TYPE_3, /* 40000000 */ 1576 /* ----- */ 1577 /* 40009619 */ 1578 400, /* .max_rretries [Note 3] */ 1579 400, /* .max_wretries [Note 3] */ 1580 {0x84, 0x85, 0x88, 0x89}, /* .densities [Note 1] */ 1581 MT_DENSITY4, /* .default_density (.densities[x]) */ 1582 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1583 0, /* .non_motion_timeout Nothing special */ 1584 0, /* .io_timeout Four Nothing Special */ 1585 0, /* .rewind_timeout Nothing Special */ 1586 0, /* .space_timeout Nothing Special */ 1587 0, /* .load_timeout Nothing Special */ 1588 0, /* .unload_timeout Nothing Special */ 1589 MINUTES(360) /* .erase_timeout Six hours */ 1590 }, 1591 1592 /* 1593 * Quantum DLT7000 1594 * 1595 * NOTES 1596 * ----- 1597 * [1] The DLT7000 implements many tape formats, but the st driver supports 1598 * only the four highest densities. 1599 * [2] The DLT7000 has only one speed (if the driver ever cares). 1600 * [3] max_rretries and max_wretries are driver anachronisms. 1601 * [4] Data is buffered in the driver and pre-acked to the application. This 1602 * is only supported in Solaris 2.5.1. 1603 */ 1604 { /* Structure member Description */ 1605 /* ---------------- ----------- */ 1606 "Quantum DLT7000", /* .name Display ("pretty") name */ 1607 15, /* .length Length of next item... */ 1608 "QUANTUM DLT7000", /* .vid Vendor-product ID string */ 1609 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1610 0, /* .bsize Block size (0 = variable) */ 1611 /* .options Drive option flags: */ 1612 ST_VARIABLE | /* 00001 Supports variable length */ 1613 ST_BSF | /* 00008 Supports SPACE block fwd */ 1614 ST_BSR | /* 00010 Supports SPACE block rev */ 1615 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1616 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1617 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1618 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 1619 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1620 ST_CLN_TYPE_3, /* 40000000 Asks to be cleaned this way */ 1621 /* -------- */ 1622 /* 4000D619 */ 1623 400, /* .max_rretries [Note 3] */ 1624 400, /* .max_wretries [Note 3] */ 1625 {0x82, 0x83, 0x84, 0x85}, /* .densities Density codes [Note 1] */ 1626 MT_DENSITY3, /* .default_density (.densities[x]) */ 1627 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1628 0, /* .non_motion_timeout Nothing special */ 1629 0, /* .io_timeout Four Nothing Special */ 1630 0, /* .rewind_timeout Nothing Special */ 1631 0, /* .space_timeout Nothing Special */ 1632 0, /* .load_timeout Nothing Special */ 1633 0, /* .unload_timeout Nothing Special */ 1634 MINUTES(360) /* .erase_timeout Six hours */ 1635 }, 1636 1637 /* 1638 * Quantum DLT4000 1639 * 1640 * NOTES 1641 * ----- 1642 * [1] The DLT4000 implements many tape formats, but the st driver supports 1643 * only the four highest densities. 1644 * [2] The DLT4000 has only one speed (if the driver ever cares). 1645 * [3] max_rretries and max_wretries are driver anachronisms. 1646 * [4] Data is buffered in the driver and pre-acked to the application. This 1647 * is only supported in 2.5.1. 1648 */ 1649 { /* Structure member Description */ 1650 /* ---------------- ----------- */ 1651 "Quantum DLT4000", /* .name Display ("pretty") name */ 1652 15, /* .length Length of next item... */ 1653 "Quantum DLT4000", /* .vid Vendor-product ID string */ 1654 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1655 0, /* .bsize Block size (0 = variable) */ 1656 /* .options Drive option flags: */ 1657 ST_VARIABLE | /* 00001 Supports variable length */ 1658 ST_BSF | /* 00008 Supports SPACE block fwd */ 1659 ST_BSR | /* 00010 Supports SPACE block rev */ 1660 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1661 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1662 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1663 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 1664 ST_NO_RECSIZE_LIMIT| /* 08000 Supports blocks > 64KB */ 1665 ST_CLN_TYPE_3, /* 40000000 Asks to be cleaned this way */ 1666 /* -------- */ 1667 /* 4000D619 */ 1668 400, /* .max_rretries [Note 3] */ 1669 400, /* .max_wretries [Note 3] */ 1670 {0x80, 0x81, 0x82, 0x83}, /* .densities Density codes [Note 1] */ 1671 MT_DENSITY3, /* .default_density (.densities[x]) */ 1672 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1673 0, /* .non_motion_timeout Nothing special */ 1674 0, /* .io_timeout Four Nothing Special */ 1675 0, /* .rewind_timeout Nothing Special */ 1676 0, /* .space_timeout Nothing Special */ 1677 0, /* .load_timeout Nothing Special */ 1678 0, /* .unload_timeout Nothing Special */ 1679 MINUTES(360) /* .erase_timeout Six hours */ 1680 }, 1681 1682 /* 1683 * [1] The DLT-S4 has three densites at this time, 1684 * 0x49 for SuperDLT tape I, 0x4a for SuperDLT tape II, 1685 * 0x4b for SuperDLT tape III. 1686 * This drive is configured with ST_KNOWS_MEDIA. 1687 * That means that it will look at the mediatype from the mode sense 1688 * to select the density code. The compression will be selected based 1689 * on the minor node the user opened. 1690 * [2] S4 reports a medium type that is used to select the density. 1691 */ 1692 { /* Structure member Description */ 1693 /* ---------------- ----------- */ 1694 "Quantum DLT-S4", /* .name Display ("pretty") name */ 1695 14, /* .length Length of next item... */ 1696 "QUANTUM DLT-S4", /* .vid Vendor-product ID string */ 1697 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1698 0, /* .bsize Block size (0 = variable) */ 1699 /* .options Drive option flags: */ 1700 ST_VARIABLE | /* 0000001 Supports variable length */ 1701 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1702 ST_BSR | /* 0000010 Supports SPACE block rev */ 1703 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1704 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1705 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1706 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 1707 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 1708 ST_WORMABLE, /* 1000000 Supports WORM */ 1709 /* ----- */ 1710 /* 1818619 */ 1711 -1, /* .max_rretries Not used any more. */ 1712 -1, /* .max_wretries Not used any more. */ 1713 {0x49, 0x4a, 0x4b, 0x4b}, /* .densities Density codes [Note 1] */ 1714 MT_DENSITY4, /* .default_density (.densities[x]) */ 1715 {0x86, 0x87, 0x91, 0x91}, /* .mediatype Media type [Note 2] */ 1716 0, /* .non_motion_time */ 1717 MINUTES(60), /* .io_time */ 1718 MINUTES(4), /* .rewind_time */ 1719 MINUTES(360), /* .space_time */ 1720 MINUTES(16), /* .load_time */ 1721 MINUTES(16), /* .unload_time */ 1722 MINUTES(360) /* .erase_time */ 1723 }, 1724 1725 /* 1726 * Seagate Hornet NS20 Travan 1727 * 1728 * NOTES 1729 * ----- 1730 * o This is an unsupported drive. 1731 * 1732 * [1] The NS20 Travan uses 0 or the "default" density code. 1733 * [2] The NS20 Travan has only one speed (if the driver ever cares). 1734 * [3] max_rretries and max_wretries are driver anachronisms. 1735 */ 1736 { /* Structure member Description */ 1737 /* ---------------- ----------- */ 1738 "Seagate Hornet NS20 Travan", 1739 /* .name Display ("pretty") name */ 1740 17, /* .length Length of next item... */ 1741 "Seagate STT20000N", /* .vid Vendor-product ID string */ 1742 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 1743 512, /* .bsize Block size (0 = variable) */ 1744 /* .options Drive option flags: */ 1745 ST_QIC | /* 00002 QIC tape device */ 1746 ST_BSF | /* 00008 Supports SPACE block fwd */ 1747 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1748 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1749 /* ----- */ 1750 /* 0840A */ 1751 400, /* .max_rretries [Note 3] */ 1752 400, /* .max_wretries [Note 3] */ 1753 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 1754 MT_DENSITY1, /* .default_density (.densities[x]) */ 1755 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1756 }, 1757 1758 /* 1759 * Seagate DAT 72 1760 * 1761 * [1] Has only one density, Uses Mode Select to enable-disable compression. 1762 * [2] Only one speed. 1763 */ 1764 1765 { /* Structure member Description */ 1766 /* ---------------- ----------- */ 1767 "Seagate DAT 72", /* .name Display ("pretty") name */ 1768 23, /* .length Length of next item... */ 1769 "SEAGATE DAT DAT72-00",/* .vid Vendor-product ID string */ 1770 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1771 0, /* .bsize Block size (0 = variable) */ 1772 /* .options Drive option flags: */ 1773 ST_VARIABLE | /* 00001 variable length records */ 1774 ST_BSF | /* 00008 Supports SPACE block fwd */ 1775 ST_BSR | /* 00010 Supports backspace record */ 1776 ST_KNOWS_EOD | /* 00200 Knows EOD when it sees it */ 1777 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1778 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1779 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1780 /* ----- */ 1781 /* 18619 */ 1782 -1, /* .max_rretries Not used any more. */ 1783 -1, /* .max_wretries Not Used any more. */ 1784 {0x47, 0x47, 0x47, 0x47}, /* .densities Density codes [Note 1] */ 1785 MT_DENSITY4, /* .default_density (.densities[x]) */ 1786 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1787 0, /* .non_motion_timeout */ 1788 MINUTES(15), /* .io_timeout */ 1789 MINUTES(2), /* .rewind_timeout */ 1790 MINUTES(15), /* .space_timeout */ 1791 0, /* .load_timeout */ 1792 0, /* .unload_timeout */ 1793 MINUTES(240) /* .erase_timeout */ 1794 }, 1795 1796 /* 1797 * Certance Ultrium LTO 3 1798 * [1] This drive supports 3 densites at this time. 1799 * ST_MODE_SEL_COMP controls compression. 1800 * [2] max_rretries and max_wretries are not used but kept for 1801 * backward compatibility. 1802 */ 1803 { /* Structure member Description */ 1804 /* ---------------- ----------- */ 1805 "Certance Ultrium 3", /* .name Display ("pretty") name */ 1806 17, /* .length Length of next item... */ 1807 "CERTANCEULTRIUM 3", /* .vid handles SCSI or FC */ 1808 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1809 0, /* .bsize Block size (0 = variable) */ 1810 /* .options Drive option flags: */ 1811 ST_VARIABLE | /* 00001 Supports variable length */ 1812 ST_BSF | /* 00008 Supports SPACE block fwd */ 1813 ST_BSR | /* 00010 Supports SPACE block rev */ 1814 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1815 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1816 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1817 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1818 /* ----- */ 1819 /* 18619 */ 1820 -1, /* .max_rretries [Note 2] */ 1821 -1, /* .max_wretries [Note 2] */ 1822 {0x40, 0x42, 0x44, 0x44}, /* .densities Density codes [Note 1] */ 1823 MT_DENSITY4, /* .default_density (.densities[x]) */ 1824 {0, 0, 0, 0}, /* .speeds Speed codes */ 1825 0, /* .non_motion_timeout */ 1826 MINUTES(60), /* .io_timeout */ 1827 MINUTES(35), /* .rewind_timeout */ 1828 MINUTES(60), /* .space_timeout */ 1829 MINUTES(35), /* .load_timeout */ 1830 MINUTES(35), /* .unload_timeout */ 1831 MINUTES(180) /* .erase_timeout */ 1832 }, 1833 1834 /* 1835 * Certance Ultrium LTO 2 1836 * [1] This drive supports two densites at this time. 1837 * 0x40 for Ultrium 1 and 0x42 for Ultrium 2. 1838 * ST_MODE_SEL_COMP controls compression. 1839 * [2] max_rretries and max_wretries are not used but kept for 1840 * backward compatibility. 1841 */ 1842 { /* Structure member Description */ 1843 /* ---------------- ----------- */ 1844 "Certance Ultrium 2", /* .name Display ("pretty") name */ 1845 17, /* .length Length of next item... */ 1846 "CERTANCEULTRIUM 2", /* .vid handles SCSI or FC */ 1847 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1848 0, /* .bsize Block size (0 = variable) */ 1849 /* .options Drive option flags: */ 1850 ST_VARIABLE | /* 00001 Supports variable length */ 1851 ST_BSF | /* 00008 Supports SPACE block fwd */ 1852 ST_BSR | /* 00010 Supports SPACE block rev */ 1853 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1854 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1855 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1856 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1857 /* ----- */ 1858 /* 18619 */ 1859 -1, /* .max_rretries [Note 2] */ 1860 -1, /* .max_wretries [Note 2] */ 1861 {0x40, 0x40, 0x42, 0x42}, /* .densities Density codes [Note 1] */ 1862 MT_DENSITY4, /* .default_density (.densities[x]) */ 1863 {0, 0, 0, 0}, /* .speeds Speed codes */ 1864 0, /* .non_motion_timeout */ 1865 MINUTES(60), /* .io_timeout */ 1866 MINUTES(35), /* .rewind_timeout */ 1867 MINUTES(60), /* .space_timeout */ 1868 MINUTES(35), /* .load_timeout */ 1869 MINUTES(35), /* .unload_timeout */ 1870 MINUTES(180) /* .erase_timeout */ 1871 }, 1872 1873 /* 1874 * Seagate Ultrium LTO 1875 * 1876 * [1] Has only one density, Uses Mode Select to enable-disable compression. 1877 * [2] Only one speed. 1878 */ 1879 1880 { /* Structure member Description */ 1881 /* ---------------- ----------- */ 1882 "Seagate Ultrium LTO", /* .name Display ("pretty") name */ 1883 23, /* .length Length of next item... */ 1884 "SEAGATE ULTRIUM06242-XX",/* .vid Vendor-product ID string */ 1885 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1886 0, /* .bsize Block size (0 = variable) */ 1887 /* .options Drive option flags: */ 1888 ST_VARIABLE | /* 00001 variable length records */ 1889 ST_BSF | /* 00008 Supports SPACE block fwd */ 1890 ST_BSR | /* 00010 Supports backspace record */ 1891 ST_KNOWS_EOD | /* 00200 Knows EOD when it sees it */ 1892 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1893 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1894 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1895 /* ----- */ 1896 /* 18619 */ 1897 -1, /* .max_rretries Not used any more. */ 1898 -1, /* .max_wretries Not Used any more. */ 1899 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 1900 MT_DENSITY4, /* .default_density (.densities[x]) */ 1901 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1902 0, /* .non_motion_timeout */ 1903 MINUTES(10), /* .io_timeout */ 1904 MINUTES(15), /* .rewind_timeout */ 1905 MINUTES(120), /* .space_timeout */ 1906 MINUTES(5), /* .load_timeout */ 1907 MINUTES(2), /* .unload_timeout */ 1908 MINUTES(120) /* .erase_timeout */ 1909 }, 1910 1911 /* 1912 * SONY 4mm DAT 1913 * 1914 * NOTES 1915 * ----- 1916 * o This is an unsupported drive. 1917 * 1918 * o This entry uses a shortened Vendor-product ID string for the 1919 * INQUIRY match. 1920 * 1921 * [1] The SDT-5000 uses 0 or the "default" density code. 1922 * [2] The SDT-5000 has only one speed (if the driver ever cares). 1923 * [3] max_rretries and max_wretries are driver anachronisms. 1924 */ 1925 { /* Structure member Description */ 1926 /* ---------------- ----------- */ 1927 "SONY 4mm DAT", /* .name Display ("pretty") name */ 1928 12, /* .length Length of next item... */ 1929 "SONY SDT-****", /* .vid Vendor-product ID string */ 1930 ST_TYPE_DAT, /* .type Numeric type (cf. mtio.h) */ 1931 0, /* .bsize Block size (0 = variable) */ 1932 /* .options Drive option flags: */ 1933 ST_VARIABLE | /* 00001 Supports variable length */ 1934 ST_BSF | /* 00008 Supports SPACE block fwd */ 1935 ST_BSR | /* 00010 Supports SPACE block rev */ 1936 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 1937 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 1938 /* ----- */ 1939 /* 00439 */ 1940 400, /* .max_rretries [Note 3] */ 1941 400, /* .max_wretries [Note 3] */ 1942 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 1943 MT_DENSITY2, /* .default_density (.densities[x]) */ 1944 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1945 }, 1946 1947 /* 1948 * Sun StorageTek T10000A tape drive. 1949 * 1950 * NOTES 1951 * ----- 1952 * o The T10000A has special needs - support for SCSI LOCATE and 1953 * READ POSITION commands - so we must be sure to place this 1954 * entry before the one for ST_TYPE_STC3490 (generic STK 1955 * half-inch cartridge drives). 1956 * [1] Compression on the T10000A is controlled 1957 * via the Device Configuration mode page. 1958 * [2] The T10000A has only one writable density, 0x4A. 1959 * [3] The T10000A has only one speed (if the driver ever cares). 1960 * [4] max_rretries and max_wretries are driver anachronisms. 1961 */ 1962 { /* Structure member Description */ 1963 /* ---------------- ----------- */ 1964 "Sun StorageTek T10000A", /* .name Display ("pretty") name */ 1965 15, /* .length Length of next item... */ 1966 "STK T10000A", /* .vid Vendor-product ID string */ 1967 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 1968 0, /* .bsize Block size (0 = variable)*/ 1969 /* .options Drive option flags: */ 1970 ST_VARIABLE | /* 0000001 Supports variable length */ 1971 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1972 ST_BSR | /* 0000010 Supports SPACE block rev */ 1973 ST_AUTODEN_OVERRIDE | /* 0000040 Autodensity override flag*/ 1974 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1975 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1976 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1977 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 1978 ST_WORMABLE, /* 1000000 Supports WORM */ 1979 /* ------- */ 1980 /* 1018659 */ 1981 -1, /* .max_rretries [Note 4] */ 1982 -1, /* .max_wretries [Note 4] */ 1983 {0x4A,0x4A,0x4A,0x4A}, /* .densities Density codes [Note 2] */ 1984 MT_DENSITY4, /* .default_density (.densities[x]) */ 1985 {0,0,0,0}, /* .speeds Speed codes [Note 3] */ 1986 0, /* .non_motion_timeout Nothing Special */ 1987 MINUTES(5), /* .io_timeout Five Five Minutes */ 1988 0, /* .rewind_timeout Nothing Special */ 1989 0, /* .space_timeout Nothing Special */ 1990 0, /* .load_timeout Nothing Special */ 1991 0, /* .unload_timeout Nothing Special */ 1992 MINUTES(180) /* .erase_timeout Three Hours */ 1993 }, 1994 1995 /* 1996 * STK 9840C cartridge drive. 1997 * 1998 * NOTES 1999 * ----- 2000 * o The 9840C has special needs - support for SCSI LOCATE and 2001 * READ POSITION commands - so we must be sure to place this 2002 * entry before the one for ST_TYPE_STC3490 (generic STK 2003 * half-inch cartridge drives). 2004 * [1] Compression on the 9840C is controlled 2005 * via the Device Configuration mode page. 2006 * [2] The 9840C has only one writable density, 0x45. I can read tapes writen 2007 * with 9840 and 9840B writen with there density code 0x42. 2008 * [3] The 9840C has only one speed (if the driver ever cares). 2009 * [4] max_rretries and max_wretries are driver anachronisms. 2010 */ 2011 { /* Structure member Description */ 2012 /* ---------------- ----------- */ 2013 "StorageTek 9840C", /* .name Display ("pretty") name */ 2014 14, /* .length Length of next item... */ 2015 "STK T9840C", /* .vid Vendor-product ID string */ 2016 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 2017 0, /* .bsize Block size (0 = variable)*/ 2018 /* .options Drive option flags: */ 2019 ST_VARIABLE | /* 0000001 Supports variable length */ 2020 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2021 ST_BSR | /* 0000010 Supports SPACE block rev */ 2022 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2023 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2024 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2025 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2026 ST_WORMABLE, /* 1000000 Supports WORM */ 2027 /* ------- */ 2028 /* 1018619 */ 2029 -1, /* .max_rretries [Note 4] */ 2030 -1, /* .max_wretries [Note 4] */ 2031 {0x45,0x45,0x45,0x45}, /* .densities Density codes [Note 2] */ 2032 MT_DENSITY1, /* .default_density (.densities[x]) */ 2033 {0,0,0,0}, /* .speeds Speed codes [Note 3] */ 2034 0, /* .non_motion_timeout Nothing Special */ 2035 MINUTES(5), /* .io_timeout Five Five Minutes */ 2036 0, /* .rewind_timeout Nothing Special */ 2037 0, /* .space_timeout Nothing Special */ 2038 0, /* .load_timeout Nothing Special */ 2039 0, /* .unload_timeout Nothing Special */ 2040 MINUTES(70) /* .erase_timeout One Hour and ten Minutes */ 2041 }, 2042 2043 /* 2044 * STK 9840B cartridge drive. 2045 * 2046 * NOTES 2047 * ----- 2048 * o The 9840B has special needs - support for SCSI LOCATE and 2049 * READ POSITION commands - so we must be sure to place this 2050 * entry before the one for ST_TYPE_STC3490 (generic STK 2051 * half-inch cartridge drives). 2052 * [1] Compression on the 9840B is controlled 2053 * via the Device Configuration mode page. 2054 * [2] The 9840B has only one density, 0x42 (or 0 for "default"). 2055 * [3] The 9840B has only one speed (if the driver ever cares). 2056 * [4] max_rretries and max_wretries are driver anachronisms. 2057 */ 2058 { /* Structure member Description */ 2059 /* ---------------- ----------- */ 2060 "StorageTek 9840B", /* .name Display ("pretty") name */ 2061 14, /* .length Length of next item... */ 2062 "STK T9840B", /* .vid Vendor-product ID string */ 2063 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 2064 0, /* .bsize Block size (0 = variable)*/ 2065 /* .options Drive option flags: */ 2066 ST_VARIABLE | /* 0000001 Supports variable length */ 2067 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2068 ST_BSR | /* 0000010 Supports SPACE block rev */ 2069 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2070 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2071 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2072 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2073 ST_WORMABLE, /* 1000000 Supports WORM */ 2074 /* ------- */ 2075 /* 1018619 */ 2076 -1, /* .max_rretries [Note 4] */ 2077 -1, /* .max_wretries [Note 4] */ 2078 {0x42,0x42,0x42,0x42}, /* .densities Density codes [Note 2] */ 2079 MT_DENSITY1, /* .default_density (.densities[x]) */ 2080 {0,0,0,0}, /* .speeds Speed codes [Note 3] */ 2081 0, /* .non_motion_timeout Nothing Special */ 2082 MINUTES(5), /* .io_timeout Five Five Minutes */ 2083 0, /* .rewind_timeout Nothing Special */ 2084 0, /* .space_timeout Nothing Special */ 2085 0, /* .load_timeout Nothing Special */ 2086 0, /* .unload_timeout Nothing Special */ 2087 MINUTES(70) /* .erase_timeout One Hour and ten Minutes */ 2088 }, 2089 2090 /* 2091 * STK 9940B cartridge drive. 2092 * 2093 * NOTES 2094 * ----- 2095 * [1] Compression on the 9940 is controlled 2096 * via the Device Configuration mode page. 2097 * [2] The 9940 has only one density, 0x44. 2098 * [3] The 9940 has only one speed (if the driver ever cares). 2099 * [4] max_rretries and max_wretries are driver not used. 2100 */ 2101 { /* Structure member Description */ 2102 /* ---------------- ----------- */ 2103 "StorageTek 9940B", /* .name Display ("pretty") name */ 2104 14, /* .length Length of next item... */ 2105 "STK T9940B", /* .vid Vendor-product ID string */ 2106 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h) */ 2107 0, /* .bsize Block size (0 = variable) */ 2108 /* .options Drive option flags: */ 2109 ST_VARIABLE | /* 0000001 Supports variable length */ 2110 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2111 ST_BSR | /* 0000010 Supports SPACE block rev */ 2112 ST_AUTODEN_OVERRIDE | /* 0000040 Autodensity override flag */ 2113 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2114 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2115 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2116 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2117 ST_WORMABLE, /* 1000000 Supports WORM */ 2118 /* ------- */ 2119 /* 1018659 */ 2120 -1, /* .max_rretries [Note 4] */ 2121 -1, /* .max_wretries [Note 4] */ 2122 {0x44,0x44,0x44,0x44}, /* .densities Density codes [Note 2] */ 2123 MT_DENSITY1, /* .default_density (.densities[x]) */ 2124 {0, 0, 0, 0}, /* .speeds Speed codes [Note 3] */ 2125 0, /* .non_motion_timeout Nothing Special */ 2126 MINUTES(5), /* .io_timeout Five minutes */ 2127 0, /* .rewind_timeout Nothing Special */ 2128 MINUTES(180), /* .space_timeout Three Hours 3 x 9840 */ 2129 0, /* .load_timeout Nothing Special */ 2130 0, /* .unload_timeout Nothing Special */ 2131 MINUTES(210) /* .erase_timeout Three and a half hours */ 2132 }, 2133 2134 /* 2135 * STK 9940 cartridge drive. 2136 * 2137 * NOTES 2138 * ----- 2139 * [1] Compression on the 9940 is controlled 2140 * via the Device Configuration mode page. 2141 * [2] The 9940 has only one density, 0x43. 2142 * [3] The 9940 has only one speed (if the driver ever cares). 2143 * [4] max_rretries and max_wretries are driver not used. 2144 */ 2145 { /* Structure member Description */ 2146 /* ---------------- ----------- */ 2147 "StorageTek 9940", /* .name Display ("pretty") name */ 2148 14, /* .length Length of next item... */ 2149 "STK T9940A", /* .vid Vendor-product ID string */ 2150 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 2151 0, /* .bsize Block size (0 = variable)*/ 2152 /* .options Drive option flags: */ 2153 ST_VARIABLE | /* 0000001 Supports variable length */ 2154 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2155 ST_BSR | /* 0000010 Supports SPACE block rev */ 2156 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2157 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2158 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2159 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2160 ST_WORMABLE, /* 1000000 Supports WORM */ 2161 /* ------- */ 2162 /* 1018619 */ 2163 -1, /* .max_rretries [Note 4] */ 2164 -1, /* .max_wretries [Note 4] */ 2165 {0x43,0x43,0x43,0x43}, /* .densities Density codes [Note 2] */ 2166 MT_DENSITY1, /* .default_density (.densities[x]) */ 2167 {0, 0, 0, 0}, /* .speeds Speed codes [Note 3] */ 2168 0, /* .non_motion_timeout Nothing Special */ 2169 MINUTES(5), /* .io_timeout Five Minutes */ 2170 0, /* .rewind_timeout Nothing Special */ 2171 MINUTES(180), /* .space_timeout Three Hours 3 x 9840 */ 2172 0, /* .load_timeout Nothing Special */ 2173 0, /* .unload_timeout Nothing Special */ 2174 MINUTES(210) /* .erase_timeout Three and a half hours */ 2175 }, 2176 2177 /* 2178 * STK 9840 cartridge drive (Sun codename: Ironsides) 2179 * 2180 * NOTES 2181 * ----- 2182 * o The 9840 has special needs - support for SCSI LOCATE and 2183 * READ POSITION commands - so we must be sure to place this 2184 * entry before the one for ST_TYPE_STC3490 (generic STK 2185 * half-inch cartridge drives). 2186 * [1] Compression on the 9840 is controlled 2187 * via the Device Configuration mode page. 2188 * [2] The 9840 has only one density, 0x42 (or 0 for "default"). 2189 * [3] The 9840 has only one speed (if the driver ever cares). 2190 * [4] max_rretries and max_wretries are driver anachronisms. 2191 * [5] ST_LONG_ERASE is not needed or used when .erase_timeout 2192 * is non-zero. 2193 */ 2194 { /* Structure member Description */ 2195 /* ---------------- ----------- */ 2196 "StorageTek 9840", /* .name Display ("pretty") name */ 2197 12, /* .length Length of next item... */ 2198 "STK 9840", /* .vid Vendor-product ID string */ 2199 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 2200 0, /* .bsize Block size (0 = variable)*/ 2201 /* .options Drive option flags: */ 2202 ST_VARIABLE | /* 0000001 Supports variable length */ 2203 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2204 ST_BSR | /* 0000010 Supports SPACE block rev */ 2205 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2206 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2207 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2208 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2209 ST_WORMABLE, /* 1000000 Supports WORM */ 2210 /* ------- */ 2211 /* 1018619 */ 2212 10, /* .max_rretries [Note 4] */ 2213 10, /* .max_wretries [Note 4] */ 2214 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 2] */ 2215 MT_DENSITY1, /* .default_density (.densities[x]) */ 2216 {0, 0, 0, 0}, /* .speeds Speed codes [Note 3] */ 2217 0, /* .non_motion_timeout Nothing Special */ 2218 MINUTES(5), /* .io_timeout Five Minutes */ 2219 0, /* .rewind_timeout Nothing Special */ 2220 0, /* .space_timeout Nothing Special */ 2221 0, /* .load_timeout Nothing Special */ 2222 0, /* .unload_timeout Nothing Special */ 2223 MINUTES(70) /* .erase_timeout One Hour and ten Minutes */ 2224 }, 2225 2226 /* 2227 * Sony SAIT 2228 * 2229 * Only looking at part of the product ID so it will match SDZ-100 and 2230 * SDZ-130. One is SCSI other is Fibre but same configuration otherwise. 2231 * 2232 */ 2233 { /* Structure member Description */ 2234 /* ---------------- ----------- */ 2235 "Sony Super AIT", /* .name Display ("pretty") name */ 2236 13, /* .length Length of next item... */ 2237 "SONY SDZ-1*", /* .vid Vendor-product ID string */ 2238 ST_TYPE_AIT, /* .type Numeric type (cf. mtio.h) */ 2239 0, 2240 ST_VARIABLE | /* 0000001 Supports variable length */ 2241 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2242 ST_BSR | /* 0000010 Supports SPACE block rev */ 2243 ST_AUTODEN_OVERRIDE | /* 0000040 Suports only one density */ 2244 ST_KNOWS_EOD | /* 0000200 Knows End Of Data */ 2245 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2246 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2247 ST_MODE_SEL_COMP | /* 0010000 mode select compression */ 2248 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 2249 /* ------- */ 2250 /* 1018659 */ 2251 -1, /* .max_rretries Not used */ 2252 -1, /* .max_wretries Not used */ 2253 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 2254 MT_DENSITY4, /* .default_density (.densities[x]) */ 2255 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 2256 0, /* .non_motion_timeout Nothing special */ 2257 0, /* .io_timeout Four Nothing Special */ 2258 0, /* .rewind_timeout Nothing Special */ 2259 0, /* .space_timeout Nothing Special */ 2260 0, /* .load_timeout Nothing Special */ 2261 0, /* .unload_timeout Nothing Special */ 2262 0, /* .erase_timeout Six hours */ 2263 }, 2264 2265 /* 2266 * Sony SDX-420 2267 * This drive is listed before the more generic AIT drives becouse it runs 2268 * only in fixed block mode. It also responds to READ BLOCK LIMITS which 2269 * leads st to beleive its a variable block capable but it will fail any 2270 * i/o that doesn't have the fix bit set in the CDB. 2271 */ 2272 { /* Structure member Description */ 2273 /* ---------------- ----------- */ 2274 "Sony AIT II", /* .name Display ("pretty") name */ 2275 15, /* .length Length of next item... */ 2276 "SONY SDX-420*", /* .vid Vendor-product ID string */ 2277 ST_TYPE_AIT, /* .type Numeric type (cf. mtio.h) */ 2278 512, 2279 ST_BSF | /* 00008 Supports SPACE block fwd */ 2280 ST_BSR | /* 00010 Supports SPACE block rev */ 2281 ST_AUTODEN_OVERRIDE | /* 00040 One density code */ 2282 ST_KNOWS_EOD | /* 00200 Knows End Of Data */ 2283 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2284 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2285 ST_MODE_SEL_COMP, /* 10000 mode select compression */ 2286 /* ----- */ 2287 /* 18658 */ 2288 -1, /* .max_rretries Not used */ 2289 -1, /* .max_wretries Not used */ 2290 {0x30, 0x30, 0x30, 0x30}, /* .densities Density codes [Note 1] */ 2291 MT_DENSITY4, /* .default_density (.densities[x]) */ 2292 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 2293 0, /* .non_motion_timeout Nothing special */ 2294 0, /* .io_timeout Four Nothing Special */ 2295 0, /* .rewind_timeout Nothing Special */ 2296 0, /* .space_timeout Nothing Special */ 2297 0, /* .load_timeout Nothing Special */ 2298 0, /* .unload_timeout Nothing Special */ 2299 0, /* .erase_timeout Six hours */ 2300 }, 2301 2302 /* 2303 * Sony SDX-520 2304 * This drive is listed before the more generic AIT drives becouse it runs 2305 * only in fixed block mode. It also responds to READ BLOCK LIMITS which 2306 * leads st to beleive its a variable block capable but it will fail any 2307 * i/o that doesn't have the fix bit set in the CDB. 2308 */ 2309 { /* Structure member Description */ 2310 /* ---------------- ----------- */ 2311 "Sony AIT II", /* .name Display ("pretty") name */ 2312 15, /* .length Length of next item... */ 2313 "SONY SDX-520*", /* .vid Vendor-product ID string */ 2314 ST_TYPE_AIT, /* .type Numeric type (cf. mtio.h) */ 2315 512, 2316 ST_BSF | /* 00008 Supports SPACE block fwd */ 2317 ST_BSR | /* 00010 Supports SPACE block rev */ 2318 ST_AUTODEN_OVERRIDE | /* 00040 One density code */ 2319 ST_KNOWS_EOD | /* 00200 Knows End Of Data */ 2320 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2321 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2322 ST_MODE_SEL_COMP, /* 10000 mode select compression */ 2323 /* ----- */ 2324 /* 18658 */ 2325 -1, /* .max_rretries Not used */ 2326 -1, /* .max_wretries Not used */ 2327 {0x30, 0x30, 0x30, 0x30}, /* .densities Density codes [Note 1] */ 2328 MT_DENSITY4, /* .default_density (.densities[x]) */ 2329 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 2330 0, /* .non_motion_timeout Nothing special */ 2331 0, /* .io_timeout Four Nothing Special */ 2332 0, /* .rewind_timeout Nothing Special */ 2333 0, /* .space_timeout Nothing Special */ 2334 0, /* .load_timeout Nothing Special */ 2335 0, /* .unload_timeout Nothing Special */ 2336 0, /* .erase_timeout Six hours */ 2337 }, 2338 2339 /* Sony generic AIT 2340 * 2341 * 2342 */ 2343 { /* Structure member Description */ 2344 /* ---------------- ----------- */ 2345 "Sony AIT", /* .name Display ("pretty") name */ 2346 12, /* .length Length of next item... */ 2347 "SONY SDX-*", /* .vid Vendor-product ID string */ 2348 ST_TYPE_AIT, /* .type Numeric type (cf. mtio.h) */ 2349 0, 2350 ST_VARIABLE | /* 0000001 Supports variable length */ 2351 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2352 ST_BSR | /* 0000010 Supports SPACE block rev */ 2353 ST_AUTODEN_OVERRIDE | /* 0000040 One density code */ 2354 ST_KNOWS_EOD | /* 0000200 Knows End Of Data */ 2355 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2356 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2357 ST_MODE_SEL_COMP | /* 0010000 mode select compression */ 2358 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 2359 /* ------- */ 2360 /* 1018659 */ 2361 -1, /* .max_rretries Not used */ 2362 -1, /* .max_wretries Not used */ 2363 {0x30, 0x30, 0x30, 0x30}, /* .densities Density codes [Note 1] */ 2364 MT_DENSITY4, /* .default_density (.densities[x]) */ 2365 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 2366 0, /* .non_motion_timeout Nothing special */ 2367 0, /* .io_timeout Four Nothing Special */ 2368 0, /* .rewind_timeout Nothing Special */ 2369 0, /* .space_timeout Nothing Special */ 2370 0, /* .load_timeout Nothing Special */ 2371 0, /* .unload_timeout Nothing Special */ 2372 0, /* .erase_timeout Six hours */ 2373 }, 2374 2375 /* 2376 * Sun DLT7000 2377 * 2378 * NOTES 2379 * ----- 2380 * [1] The DLT7000 implements many tape formats, but the st driver supports 2381 * only the four highest densities. 2382 * [2] The DLT7000 has only one speed (if the driver ever cares). 2383 * [3] max_rretries and max_wretries are driver anachronisms. 2384 * [4] Data is buffered in the driver and pre-acked to the application. This 2385 * is only supported in 2.5.1. 2386 */ 2387 { /* Structure member Description */ 2388 /* ---------------- ----------- */ 2389 "Sun DLT7000", /* .name Display ("pretty") name */ 2390 15, /* .length Length of next item... */ 2391 "SUN DLT7000", /* .vid Vendor-product ID string */ 2392 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 2393 0, /* .bsize Block size (0 = variable) */ 2394 /* .options Drive option flags: */ 2395 ST_VARIABLE | /* 00001 Supports variable length */ 2396 ST_BSF | /* 00008 Supports SPACE block fwd */ 2397 ST_BSR | /* 00010 Supports SPACE block rev */ 2398 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2399 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2400 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2401 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 2402 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2403 ST_CLN_TYPE_3, /* 40000000 Asks to be cleaned this way */ 2404 /* -------- */ 2405 /* 4000D619 */ 2406 400, /* .max_rretries [Note 3] */ 2407 400, /* .max_wretries [Note 3] */ 2408 {0x82, 0x83, 0x84, 0x85}, /* .densities Density codes [Note 1] */ 2409 MT_DENSITY3, /* .default_density (.densities[x]) */ 2410 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 2411 0, /* .non_motion_timeout Nothing special */ 2412 0, /* .io_timeout Four Nothing Special */ 2413 0, /* .rewind_timeout Nothing Special */ 2414 0, /* .space_timeout Nothing Special */ 2415 0, /* .load_timeout Nothing Special */ 2416 0, /* .unload_timeout Nothing Special */ 2417 MINUTES(360) /* .erase_timeout Six hours */ 2418 }, 2419 2420 /* 2421 * Sun DLT4000 2422 * 2423 * NOTES 2424 * ----- 2425 * [1] The DLT4000 implements many tape formats, but the st driver supports 2426 * only the four highest densities. 2427 * [2] The DLT4000 has only one speed (if the driver ever cares). 2428 * [3] max_rretries and max_wretries are driver anachronisms. 2429 * [4] Data is buffered in the driver and pre-acked to the application. This 2430 * is only supported in 2.5.1. 2431 */ 2432 { /* Structure member Description */ 2433 /* ---------------- ----------- */ 2434 "DLT4000", /* .name Display ("pretty") name */ 2435 15, /* .length Length of next item... */ 2436 "SUN DLT4000", /* .vid Vendor-product ID string */ 2437 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 2438 0, /* .bsize Block size (0 = variable) */ 2439 /* .options Drive option flags: */ 2440 ST_VARIABLE | /* 00001 Supports variable length */ 2441 ST_BSF | /* 00008 Supports SPACE block fwd */ 2442 ST_BSR | /* 00010 Supports SPACE block rev */ 2443 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2444 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2445 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2446 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 2447 ST_NO_RECSIZE_LIMIT| /* 08000 Supports blocks > 64KB */ 2448 ST_CLN_TYPE_3, /* 40000000 Asks to be cleaned this way */ 2449 /* -------- */ 2450 /* 4000D619 */ 2451 400, /* .max_rretries [Note 3] */ 2452 400, /* .max_wretries [Note 3] */ 2453 {0x80, 0x81, 0x82, 0x83}, /* .densities Density codes [Note 1] */ 2454 MT_DENSITY3, /* .default_density (.densities[x]) */ 2455 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 2456 0, /* .non_motion_timeout Nothing special */ 2457 0, /* .io_timeout Four Nothing Special */ 2458 0, /* .rewind_timeout Nothing Special */ 2459 0, /* .space_timeout Nothing Special */ 2460 0, /* .load_timeout Nothing Special */ 2461 0, /* .unload_timeout Nothing Special */ 2462 MINUTES(360) /* .erase_timeout Six hours */ 2463 }, 2464 2465 /* 2466 * Sun DLT4700 2467 * 2468 * NOTES 2469 * ----- 2470 * [1] Compression on the DLT4700 is controlled via the Device Configuration 2471 * mode page or the Data Compression page (either one). 2472 * [2] The DLT4700 implements many tape formats, but the st driver supports 2473 * only the four highest densities. 2474 * [3] The DLT4700 has only one speed (if the driver ever cares). 2475 * [4] max_rretries and max_wretries are driver anachronisms. 2476 * [5] Data is buffered in the driver and pre-acked to the application. This 2477 * is only supported in 2.5.1. 2478 */ 2479 { /* Structure member Description */ 2480 /* ---------------- ----------- */ 2481 "DLT4700 Library", /* .name Display ("pretty") name */ 2482 15, /* .length Length of next item... */ 2483 "SUN DLT4700", /* .vid Vendor-product ID string */ 2484 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 2485 0, /* .bsize Block size (0 = variable) */ 2486 /* .options Drive option flags: */ 2487 ST_VARIABLE | /* 00001 Supports variable length */ 2488 ST_BSF | /* 00008 Supports SPACE block fwd */ 2489 ST_BSR | /* 00010 Supports SPACE block rev */ 2490 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2491 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2492 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2493 ST_BUFFERED_WRITES | /* 04000 [Note 5] */ 2494 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2495 /* ----- */ 2496 /* 0D619 */ 2497 400, /* .max_rretries [Note 4] */ 2498 400, /* .max_wretries [Note 4] */ 2499 {0x80, 0x81, 0x82, 0x83}, /* .densities Density codes [Note 2] */ 2500 MT_DENSITY3, /* .default_density (.densities[x]) */ 2501 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 2502 0, /* .non_motion_timeout Nothing special */ 2503 0, /* .io_timeout Four Nothing Special */ 2504 0, /* .rewind_timeout Nothing Special */ 2505 0, /* .space_timeout Nothing Special */ 2506 0, /* .load_timeout Nothing Special */ 2507 0, /* .unload_timeout Nothing Special */ 2508 MINUTES(360) /* .erase_timeout Six hours */ 2509 }, 2510 2511 /* 2512 * Tandberg SLR5 4/8G (standard firmware) 2513 * 2514 * NOTES 2515 * ----- 2516 * [1] The density code entry requires four values, even if there are less 2517 * than four values for the drive. 2518 * [2] The Tandberg SLR5 4/8G has only one speed (if the driver ever cares). 2519 * [3] max_rretries and max_wretries are driver anachronisms. 2520 */ 2521 { /* Structure member Description */ 2522 /* ---------------- ----------- */ 2523 "Tandberg 4/8 Gig QIC", /* .name Display ("pretty") name */ 2524 19, /* .length Length of next item... */ 2525 "TANDBERG SLR5 4/8GB", /* .vid Vendor-product ID string */ 2526 ST_TYPE_TAND25G, /* .type Numeric type (cf. mtio.h) */ 2527 0, /* .bsize Block size (0 = variable) */ 2528 /* .options Drive option flags: */ 2529 ST_VARIABLE | /* 00001 Supports variable length */ 2530 ST_QIC | /* 00002 QIC tape device */ 2531 ST_BSF | /* 00008 Supports SPACE block fwd */ 2532 ST_BSR | /* 00010 Supports SPACE block rev */ 2533 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2534 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2535 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2536 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2537 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2538 /* ----- */ 2539 /* 0963B */ 2540 400, /* .max_rretries [Note 3] */ 2541 400, /* .max_wretries [Note 3] */ 2542 {0x22, 0x22, 0x26, 0x26}, /* .densities Density codes [Note 1] */ 2543 MT_DENSITY4, /* .default_density (.densities[x]) */ 2544 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2545 }, 2546 2547 /* 2548 * Tandberg SLR5 (SMI firmware). 2549 * 2550 * NOTES 2551 * ----- 2552 * o The inquiry string for this drive is actually padded with blanks, but 2553 * we only check the first 13 characters so that this will act as a default 2554 * to cover other revisions of firmware on SLR5s which may show up. 2555 * 2556 * [1] The density code entry requires four values, even if there are less 2557 * than four values for the drive. 2558 * [2] The Tandberg SLR5 has only one speed (if the driver ever cares). 2559 * [3] max_rretries and max_wretries are driver anachronisms. 2560 */ 2561 { /* Structure member Description */ 2562 /* ---------------- ----------- */ 2563 "Tandberg 8 Gig QIC", /* .name Display ("pretty") name */ 2564 13, /* .length Length of next item... */ 2565 "TANDBERG SLR5", /* .vid Vendor-product ID string */ 2566 ST_TYPE_TAND25G, /* .type Numeric type (cf. mtio.h) */ 2567 0, /* .bsize Block size (0 = variable) */ 2568 /* .options Drive option flags: */ 2569 ST_VARIABLE | /* 00001 Supports variable length */ 2570 ST_QIC | /* 00002 QIC tape device */ 2571 ST_BSF | /* 00008 Supports SPACE block fwd */ 2572 ST_BSR | /* 00010 Supports SPACE block rev */ 2573 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2574 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2575 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2576 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2577 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2578 /* ----- */ 2579 /* 0963B */ 2580 400, /* .max_rretries [Note 3] */ 2581 400, /* .max_wretries [Note 3] */ 2582 {0xA0, 0xD0, 0xD0, 0xD0}, /* .densities Density codes [Note 1] */ 2583 MT_DENSITY4, /* .default_density (.densities[x]) */ 2584 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2585 }, 2586 2587 /* 2588 * Tandberg 4100 QIC 2589 * 2590 * NOTES 2591 * ----- 2592 * o This is an unsupported drive. 2593 * 2594 * [1] The Tandberg 4100 uses 0 or the "default" density code. 2595 * [2] The Tandberg 4100 has only one speed (if the driver ever cares). 2596 * [3] max_rretries and max_wretries are driver anachronisms. 2597 */ 2598 { /* Structure member Description */ 2599 /* ---------------- ----------- */ 2600 "Tandberg 4100 QIC", /* .name Display ("pretty") name */ 2601 13, /* .length Length of next item... */ 2602 "TANDBERG 4100", /* .vid Vendor-product ID string */ 2603 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 2604 512, /* .bsize Block size (0 = variable) */ 2605 /* .options Drive option flags: */ 2606 ST_QIC | /* 00002 QIC tape device */ 2607 ST_BSF | /* 00008 Supports SPACE block fwd */ 2608 ST_BSR | /* 00010 Supports SPACE block rev */ 2609 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2610 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2611 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2612 /* ----- */ 2613 /* 0063A */ 2614 400, /* .max_rretries [Note 3] */ 2615 400, /* .max_wretries [Note 3] */ 2616 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2617 MT_DENSITY2, /* .default_density (.densities[x]) */ 2618 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2619 }, 2620 2621 /* 2622 * Tandberg 4200 QIC 2623 * 2624 * NOTES 2625 * ----- 2626 * o This is an unsupported drive. 2627 * 2628 * [1] The Tandberg 4200 uses 0 or the "default" density code. 2629 * [2] The Tandberg 4200 has only one speed (if the driver ever cares). 2630 * [3] max_rretries and max_wretries are driver anachronisms. 2631 */ 2632 { /* Structure member Description */ 2633 /* ---------------- ----------- */ 2634 "Tandberg 4200 QIC", /* .name Display ("pretty") name */ 2635 13, /* .length Length of next item... */ 2636 "TANDBERG 4200", /* .vid Vendor-product ID string */ 2637 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 2638 512, /* .bsize Block size (0 = variable) */ 2639 /* .options Drive option flags: */ 2640 ST_QIC | /* 00002 QIC tape device */ 2641 ST_BSF | /* 00008 Supports SPACE block fwd */ 2642 ST_BSR | /* 00010 Supports SPACE block rev */ 2643 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2644 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2645 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2646 /* ----- */ 2647 /* 0063A */ 2648 400, /* .max_rretries [Note 3] */ 2649 400, /* .max_wretries [Note 3] */ 2650 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2651 MT_DENSITY2, /* .default_density (.densities[x]) */ 2652 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2653 }, 2654 2655 /* 2656 * Tandberg QIC 2.5 Gig Tape Drive 2657 * 2658 * NOTES 2659 * ----- 2660 * [1] The TDC 4200 uses 0 or the "default" density code. 2661 * [2] The TDC 4200 has only one speed (if the driver ever cares). 2662 * [3] max_rretries and max_wretries are driver anachronisms. 2663 * [4] Data is buffered in the driver and pre-acked to the application. This 2664 * is only supported in 2.5.1. 2665 */ 2666 { /* Structure member Description */ 2667 /* ---------------- ----------- */ 2668 "Tandberg QIC 2.5 Gig Tape Drive", 2669 /* .name Display ("pretty") name */ 2670 16, /* .length Length of next item... */ 2671 "TANDBERG TDC 420*", /* .vid Vendor-product ID string */ 2672 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 2673 0, /* .bsize Block size (0 = variable) */ 2674 /* .options Drive option flags: */ 2675 ST_VARIABLE | /* 00001 Supports variable length */ 2676 ST_QIC | /* 00002 QIC tape device */ 2677 ST_BSF | /* 00008 Supports SPACE block fwd */ 2678 ST_BSR | /* 00010 Supports SPACE block rev */ 2679 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2680 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 2681 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2682 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2683 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2684 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 2685 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2686 /* ----- */ 2687 /* 0D67B */ 2688 400, /* .max_rretries [Note 3] */ 2689 400, /* .max_wretries [Note 3] */ 2690 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2691 MT_DENSITY1, /* .default_density (.densities[x]) */ 2692 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2693 }, 2694 2695 /* 2696 * Tandberg MLR1 QIC 2697 * 2698 * NOTES 2699 * ----- 2700 * [1] The MLR1 uses 0 or the "default" density code. 2701 * [2] The MLR1 has only one speed (if the driver ever cares). 2702 * [3] max_rretries and max_wretries are driver anachronisms. 2703 * [4] Data is buffered in the driver and pre-acked to the application. This 2704 * is only supported in 2.5.1. 2705 */ 2706 { /* Structure member Description */ 2707 /* ---------------- ----------- */ 2708 "Tandberg MLR1 QIC", /* .name Display ("pretty") name */ 2709 12, /* .length Length of next item... */ 2710 "TANDBERGMLR1", /* .vid Vendor-product ID string */ 2711 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 2712 512, /* .bsize Block size (0 = variable) */ 2713 /* .options Drive option flags: */ 2714 ST_QIC | /* 00002 QIC tape device */ 2715 ST_BSF | /* 00008 Supports SPACE block fwd */ 2716 ST_BSR | /* 00010 Supports SPACE block rev */ 2717 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2718 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2719 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2720 ST_BUFFERED_WRITES, /* 04000 [Note 4] */ 2721 /* ----- */ 2722 /* 0463A */ 2723 400, /* .max_rretries [Note 3] */ 2724 400, /* .max_wretries [Note 3] */ 2725 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2726 MT_DENSITY1, /* .default_density (.densities[x]) */ 2727 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2728 }, 2729 2730 /* 2731 * Tandberg MLR3 QIC 2732 * 2733 * NOTES 2734 * ----- 2735 * [1] The density code entry requires four values, even if there are less 2736 * than four values for the drive. 2737 * [2] The MLR3 has only one speed (if the driver ever cares). 2738 * [3] max_rretries and max_wretries are driver anachronisms. 2739 */ 2740 { /* Structure member Description */ 2741 /* ---------------- ----------- */ 2742 "Tandberg 50 Gig QIC", /* .name Display ("pretty") name */ 2743 12, /* .length Length of next item... */ 2744 "TANDBERGMLR3", /* .vid Vendor-product ID string */ 2745 MT_ISTAND25G, /* .type Numeric type (cf. mtio.h) */ 2746 0, /* .bsize Block size (0 = variable) */ 2747 /* .options Drive option flags: */ 2748 ST_VARIABLE | /* 00001 Supports variable length */ 2749 ST_QIC | /* 00002 QIC tape device */ 2750 ST_BSF | /* 00008 Supports SPACE block fwd */ 2751 ST_BSR | /* 00010 Supports SPACE block rev */ 2752 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2753 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2754 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2755 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2756 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2757 /* ----- */ 2758 /* 0963B */ 2759 400, /* .max_rretries [Note 3] */ 2760 400, /* .max_wretries [Note 3] */ 2761 {0xA0, 0xD0, 0xD0, 0xD0}, /* .densities Density codes [Note 1] */ 2762 MT_DENSITY3, /* .default_density (.densities[x]) */ 2763 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2764 }, 2765 2766 /* 2767 * WangDAT 3.81mm cartridge 2768 * 2769 * NOTES 2770 * ----- 2771 * o This is an unsupported drive. 2772 * 2773 * [1] The WangDAT 3.81mm uses 0 or the "default" density code. 2774 * [2] The WangDAT 3.81mm has only one speed (if the driver ever cares). 2775 * [3] max_rretries and max_wretries are driver anachronisms. 2776 */ 2777 { /* Structure member Description */ 2778 /* ---------------- ----------- */ 2779 "Wang DAT 3.81 Helical Scan", 2780 /* .name Display ("pretty") name */ 2781 7, /* .length Length of next item... */ 2782 "WangDAT", /* .vid Vendor-product ID string */ 2783 ST_TYPE_WANGDAT, /* .type Numeric type (cf. mtio.h) */ 2784 0, /* .bsize Block size (0 = variable) */ 2785 /* .options Drive option flags: */ 2786 ST_VARIABLE | /* 00001 Supports variable length */ 2787 ST_BSF | /* 00008 Supports SPACE block fwd */ 2788 ST_BSR | /* 00010 Supports SPACE block rev */ 2789 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 2790 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2791 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2792 /* ----- */ 2793 /* 00659 */ 2794 5000, /* .max_rretries [Note 3] */ 2795 5000, /* .max_wretries [Note 3] */ 2796 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2797 MT_DENSITY2, /* .default_density (.densities[x]) */ 2798 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2799 }, 2800 2801 /* 2802 * Wangtek QIC-150 1/4" cartridge 2803 * 2804 * NOTES 2805 * ----- 2806 * o This is an unsupported drive. 2807 * 2808 * [1] The Wangtek QIC-150 uses 0 or the "default" density code. 2809 * [2] The Wangtek QIC-150 has only one speed (if the driver ever cares). 2810 * [3] max_rretries and max_wretries are driver anachronisms. 2811 */ 2812 { /* Structure member Description */ 2813 /* ---------------- ----------- */ 2814 "Wangtek QIC-150", /* .name Display ("pretty") name */ 2815 14, /* .length Length of next item... */ 2816 "WANGTEK 5150ES", /* .vid Vendor-product ID string */ 2817 ST_TYPE_WANGTEK, /* .type Numeric type (cf. mtio.h) */ 2818 512, /* .bsize Block size (0 = variable) */ 2819 /* .options Drive option flags: */ 2820 ST_QIC | /* 00002 QIC tape device */ 2821 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 2822 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2823 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2824 /* ----- */ 2825 /* 00642 */ 2826 400, /* .max_rretries [Note 3] */ 2827 400, /* .max_wretries [Note 3] */ 2828 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2829 MT_DENSITY2, /* .default_density (.densities[x]) */ 2830 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2831 }, 2832 2833 /* 2834 * Wangtek 4mm RDAT drive 2835 * 2836 * NOTES 2837 * ----- 2838 * o This is an unsupported drive. 2839 * 2840 * o This entry uses a shortened Vendor-product ID string for the 2841 * INQUIRY match. 2842 * 2843 * [1] The Wangtek 4mm RDAT uses 0 or the "default" density code. 2844 * [2] The Wangtek 4mm RDAT has only one speed (if the driver ever cares). 2845 * [3] max_rretries and max_wretries are driver anachronisms. 2846 */ 2847 { /* Structure member Description */ 2848 /* ---------------- ----------- */ 2849 "Wangtek 4mm Helical Scan", 2850 /* .name Display ("pretty") name */ 2851 14, /* .length Length of next item... */ 2852 "WANGTEK 6130-H*", /* .vid Vendor-product ID string */ 2853 ST_TYPE_WANGTHS, /* .type Numeric type (cf. mtio.h) */ 2854 0, /* .bsize Block size (0 = variable) */ 2855 /* .options Drive option flags: */ 2856 ST_VARIABLE | /* 00001 Supports variable length */ 2857 ST_BSF | /* 00008 Supports SPACE block fwd */ 2858 ST_BSR | /* 00010 Supports SPACE block rev */ 2859 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 2860 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2861 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2862 /* ----- */ 2863 /* 00659 */ 2864 400, /* .max_rretries [Note 3] */ 2865 400, /* .max_wretries [Note 3] */ 2866 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2867 MT_DENSITY2, /* .default_density (.densities[x]) */ 2868 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2869 }, 2870 2871 /* 2872 * Wangtek QIC-150 1/4" cartridge 2873 * 2874 * NOTES 2875 * ----- 2876 * o This is an unsupported drive. 2877 * 2878 * [1] The Wangtek QIC-150 uses 0 or the "default" density code. 2879 * [2] The Wangtek QIC-150 has only one speed (if the driver ever cares). 2880 * [3] max_rretries and max_wretries are driver anachronisms. 2881 */ 2882 { /* Structure member Description */ 2883 /* ---------------- ----------- */ 2884 "Wangtek 5525ES SCSI", /* .name Display ("pretty") name */ 2885 19, /* .length Length of next item... */ 2886 "WANGTEK 5525ES SCSI", /* .vid Vendor-product ID string */ 2887 ST_TYPE_WANGTEK, /* .type Numeric type (cf. mtio.h) */ 2888 512, /* .bsize Block size (0 = variable) */ 2889 /* .options Drive option flags: */ 2890 ST_QIC | /* 00002 QIC tape device */ 2891 ST_BSF | /* 00008 Supports SPACE block fwd */ 2892 ST_BSR | /* 00010 Supports SPACE block rev */ 2893 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2894 ST_AUTODEN_OVERRIDE | /* 00040 Autdensity override flag */ 2895 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2896 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2897 /* ----- */ 2898 /* 0067A */ 2899 400, /* .max_rretries [Note 3] */ 2900 400, /* .max_wretries [Note 3] */ 2901 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2902 MT_DENSITY2, /* .default_density (.densities[x]) */ 2903 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2904 }, 2905 2906 /* 2907 * [1] The Ecrix VXA-1 has only one density at this time, 2908 * Compression is controlled via the Device Configuration 2909 * mode page. 2910 * [2] The Ecrix VXA-1 is a veriable speed device. The drive determines 2911 * the optimum speed. (if the driver ever cares). 2912 */ 2913 { /* Structure member Description */ 2914 /* ---------------- ----------- */ 2915 "Ecrix VXA-1", /* .name Display ("pretty") name */ 2916 13, /* .length Length of next item... */ 2917 "ECRIX VXA-1", /* .vid Vendor-product ID string */ 2918 MT_ISOTHER, /* .type Numeric type (cf. mtio.h) */ 2919 0, /* .bsize Block size (0 = variable) */ 2920 /* .options Drive option flags: */ 2921 ST_VARIABLE | /* 00001 Supports variable length */ 2922 ST_BSF | /* 00008 Supports SPACE block fwd */ 2923 ST_BSR | /* 00010 Supports SPACE block rev */ 2924 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2925 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2926 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2927 ST_SOFT_ERROR_REPORTING | /* 00800 Reports errors on close */ 2928 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2929 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2930 ST_MODE_SEL_COMP | /* 10000 Mode Select to enable comp */ 2931 ST_CLN_TYPE_1, /* 10000000 Asks to be cleaned this way */ 2932 /* -------- */ 2933 /* 10019E39 */ 2934 -1, /* .max_rretries */ 2935 -1, /* .max_wretries */ 2936 {0x80, 0x80, 0x80, 0x80}, /* .densities Density codes [Note 1] */ 2937 MT_DENSITY4, /* .default_density (.densities[x]) */ 2938 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2939 }, 2940 2941 /* 2942 * [1] The IBM Ultrium Gen 4 "OEM" version has two densites at this time, 2943 * One for Gen 3 0x44, One for Gen 4 0x46. 2944 * This drive is configured with ST_KNOWS_MEDIA. 2945 * That means that it will look at the mediatype from the mode sense 2946 * to select the density code. The compression will be selected based 2947 * on the minor node the user opened. 2948 * [2] The IBM LTO reports a medium type that is used to select the density. 2949 */ 2950 { /* Structure member Description */ 2951 /* ---------------- ----------- */ 2952 "IBM Ultrium Gen 4 LTO", /* .name Display ("pretty") name */ 2953 19, /* .length Length of next item... */ 2954 "IBM ULTRIUM-TD4", /* .vid Vendor-product ID string */ 2955 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 2956 0, /* .bsize Block size (0 = variable) */ 2957 /* .options Drive option flags: */ 2958 ST_VARIABLE | /* 0000001 Supports variable length */ 2959 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2960 ST_BSR | /* 0000010 Supports SPACE block rev */ 2961 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2962 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2963 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2964 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2965 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 2966 ST_WORMABLE, /* 1000000 Is WORM capable */ 2967 /* ------- */ 2968 /* 1818619 */ 2969 -1, /* .max_rretries Not used any more. */ 2970 -1, /* .max_wretries Not used any more. */ 2971 {0x44, 0x44, 0x46, 0x46}, /* .densities Density codes [Note 1] */ 2972 MT_DENSITY4, /* .default_density (.densities[x]) */ 2973 {0x38, 0x38, 0x48, 0x48}, /* .mediatype Media type [Note 2] */ 2974 MINUTES(1), /* .non_motion_time */ 2975 MINUTES(23), /* .io_time */ 2976 MINUTES(9), /* .rewind_time */ 2977 MINUTES(183), /* .space_time worst case directory invalid*/ 2978 MINUTES(9), /* .load_time */ 2979 MINUTES(13), /* .unload_time */ 2980 MINUTES(180) /* .erase_time */ 2981 }, 2982 2983 /* 2984 * [1] The IBM Ultrium Gen 4 "IBM" version has two densites at this time, 2985 * One for Gen 3 0x44, one for Gen 4 0x46. 2986 * This drive is configured with ST_KNOWS_MEDIA. 2987 * That means that it will look at the mediatype from the mode sense 2988 * to select the density code. The compression will be selected based 2989 * on the minor node the user opened. 2990 * [2] The IBM LTO reports a medium type that is used to select the density. 2991 */ 2992 { /* Structure member Description */ 2993 /* ---------------- ----------- */ 2994 "IBM Ultrium Gen 4 LTO", /* .name Display ("pretty") name */ 2995 19, /* .length Length of next item... */ 2996 "IBM ULT3580-TD4", /* .vid Vendor-product ID string */ 2997 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 2998 0, /* .bsize Block size (0 = variable) */ 2999 /* .options Drive option flags: */ 3000 ST_VARIABLE | /* 0000001 Supports variable length */ 3001 ST_BSF | /* 0000008 Supports SPACE block fwd */ 3002 ST_BSR | /* 0000010 Supports SPACE block rev */ 3003 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 3004 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 3005 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 3006 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 3007 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 3008 ST_WORMABLE, /* 1000000 Is WORM capable */ 3009 /* ------- */ 3010 /* 1818619 */ 3011 -1, /* .max_rretries Not used any more. */ 3012 -1, /* .max_wretries Not used any more. */ 3013 {0x44, 0x44, 0x46, 0x46}, /* .densities Density codes [Note 1] */ 3014 MT_DENSITY4, /* .default_density (.densities[x]) */ 3015 {0x38, 0x38, 0x48, 0x48}, /* .mediatype Media type [Note 2] */ 3016 MINUTES(1), /* .non_motion_time */ 3017 MINUTES(23), /* .io_time */ 3018 MINUTES(9), /* .rewind_time */ 3019 MINUTES(183), /* .space_time worst case directory invalid*/ 3020 MINUTES(9), /* .load_time */ 3021 MINUTES(13), /* .unload_time */ 3022 MINUTES(180) /* .erase_time */ 3023 }, 3024 3025 /* 3026 * [1] The IBM Ultrium Gen 3 "OEM" version has three densites at this time, 3027 * One for Gen 1 0x40, One for Gen 2 0x42 and for Gen 3 0x44. 3028 * This drive is configured with ST_KNOWS_MEDIA. 3029 * That means that it will look at the mediatype from the mode sense 3030 * to select the density code. The compression will be selected based 3031 * on the minor node the user opened. 3032 * [2] The IBM LTO reports a medium type that is used to select the density. 3033 */ 3034 { /* Structure member Description */ 3035 /* ---------------- ----------- */ 3036 "IBM Ultrium Gen 3 LTO", /* .name Display ("pretty") name */ 3037 19, /* .length Length of next item... */ 3038 "IBM ULTRIUM-TD3", /* .vid Vendor-product ID string */ 3039 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3040 0, /* .bsize Block size (0 = variable) */ 3041 /* .options Drive option flags: */ 3042 ST_VARIABLE | /* 0000001 Supports variable length */ 3043 ST_BSF | /* 0000008 Supports SPACE block fwd */ 3044 ST_BSR | /* 0000010 Supports SPACE block rev */ 3045 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 3046 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 3047 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 3048 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 3049 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 3050 ST_WORMABLE, /* 1000000 Is WORM capable */ 3051 /* ------- */ 3052 /* 1818619 */ 3053 -1, /* .max_rretries Not used any more. */ 3054 -1, /* .max_wretries Not used any more. */ 3055 {0x40, 0x42, 0x44, 0x44}, /* .densities Density codes [Note 1] */ 3056 MT_DENSITY4, /* .default_density (.densities[x]) */ 3057 {0x18, 0x28, 0x38, 0x38}, /* .mediatype Media type [Note 2] */ 3058 MINUTES(1), /* .non_motion_time */ 3059 MINUTES(18), /* .io_time */ 3060 MINUTES(9), /* .rewind_time */ 3061 MINUTES(165), /* .space_time worst case directory invalid*/ 3062 MINUTES(9), /* .load_time */ 3063 MINUTES(12), /* .unload_time */ 3064 MINUTES(160) /* .erase_time */ 3065 }, 3066 3067 /* 3068 * [1] The IBM Ultrium Gen 3 "IBM" version has three densites at this time, 3069 * One for Gen 1 0x40, One for Gen 2 0x42 and Gen 3 0x44. 3070 * This drive is configured with ST_KNOWS_MEDIA. 3071 * That means that it will look at the mediatype from the mode sense 3072 * to select the density code. The compression will be selected based 3073 * on the minor node the user opened. 3074 * [2] The IBM LTO reports a medium type that is used to select the density. 3075 */ 3076 { /* Structure member Description */ 3077 /* ---------------- ----------- */ 3078 "IBM Ultrium Gen 3 LTO", /* .name Display ("pretty") name */ 3079 19, /* .length Length of next item... */ 3080 "IBM ULT3580-TD3", /* .vid Vendor-product ID string */ 3081 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3082 0, /* .bsize Block size (0 = variable) */ 3083 /* .options Drive option flags: */ 3084 ST_VARIABLE | /* 0000001 Supports variable length */ 3085 ST_BSF | /* 0000008 Supports SPACE block fwd */ 3086 ST_BSR | /* 0000010 Supports SPACE block rev */ 3087 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 3088 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 3089 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 3090 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 3091 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 3092 ST_WORMABLE, /* 1000000 Is WORM capable */ 3093 /* ------- */ 3094 /* 1818619 */ 3095 -1, /* .max_rretries Not used any more. */ 3096 -1, /* .max_wretries Not used any more. */ 3097 {0x40, 0x42, 0x44, 0x44}, /* .densities Density codes [Note 1] */ 3098 MT_DENSITY4, /* .default_density (.densities[x]) */ 3099 {0x18, 0x28, 0x38, 0x38}, /* .mediatype Media type [Note 2] */ 3100 MINUTES(1), /* .non_motion_time */ 3101 MINUTES(18), /* .io_time */ 3102 MINUTES(9), /* .rewind_time */ 3103 MINUTES(165), /* .space_time worst case directory invalid*/ 3104 MINUTES(9), /* .load_time */ 3105 MINUTES(12), /* .unload_time */ 3106 MINUTES(160) /* .erase_time */ 3107 }, 3108 3109 /* 3110 * [1] The IBM Ultrium Gen 2 "OEM" version has two densites at this time, 3111 * One for Gen 1 0x40, One for Gen 2 0x42. In reallity The media 3112 * Selects which density code is used but this documents the codes 3113 * for those who care to know. 3114 * Compression is controlled via the Compression mode page. 3115 * [2] The IBM Ultrium has only one speed (if the driver ever cares). 3116 */ 3117 { /* Structure member Description */ 3118 /* ---------------- ----------- */ 3119 "IBM Ultrium Gen 2 LTO", /* .name Display ("pretty") name */ 3120 19, /* .length Length of next item... */ 3121 "IBM ULTRIUM-TD2", /* .vid Vendor-product ID string */ 3122 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3123 0, /* .bsize Block size (0 = variable) */ 3124 /* .options Drive option flags: */ 3125 ST_VARIABLE | /* 00001 Supports variable length */ 3126 ST_BSF | /* 00008 Supports SPACE block fwd */ 3127 ST_BSR | /* 00010 Supports SPACE block rev */ 3128 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3129 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3130 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3131 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3132 /* ----- */ 3133 /* 18619 */ 3134 -1, /* .max_rretries Not used any more. */ 3135 -1, /* .max_wretries Not used any more. */ 3136 {0x40, 0x40, 0x42, 0x42}, /* .densities Density codes [Note 1] */ 3137 MT_DENSITY4, /* .default_density (.densities[x]) */ 3138 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3139 MINUTES(1), /* .non_motion_time */ 3140 MINUTES(18), /* .io_time */ 3141 MINUTES(9), /* .rewind_time */ 3142 MINUTES(151), /* .space_time worst case directory invalid*/ 3143 MINUTES(12), /* .load_time */ 3144 MINUTES(11), /* .unload_time */ 3145 MINUTES(151) /* .erase_time */ 3146 }, 3147 3148 /* 3149 * [1] The IBM Ultrium Gen 2 "IBM" version has two densites at this time, 3150 * One for Gen 1 0x40, One for Gen 2 0x42. In reallity The media 3151 * Selects which density code is used but this documents the codes 3152 * for those who care to know. 3153 * Compression is controlled via the Compression mode page. 3154 * [2] The IBM Ultrium has only one speed (if the driver ever cares). 3155 */ 3156 { /* Structure member Description */ 3157 /* ---------------- ----------- */ 3158 "IBM Ultrium Gen 2 LTO", /* .name Display ("pretty") name */ 3159 19, /* .length Length of next item... */ 3160 "IBM ULT3580-TD2", /* .vid Vendor-product ID string */ 3161 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3162 0, /* .bsize Block size (0 = variable) */ 3163 /* .options Drive option flags: */ 3164 ST_VARIABLE | /* 00001 Supports variable length */ 3165 ST_BSF | /* 00008 Supports SPACE block fwd */ 3166 ST_BSR | /* 00010 Supports SPACE block rev */ 3167 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3168 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3169 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3170 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3171 /* ----- */ 3172 /* 18619 */ 3173 -1, /* .max_rretries Not used any more. */ 3174 -1, /* .max_wretries Not used any more. */ 3175 {0x40, 0x40, 0x42, 0x42}, /* .densities Density codes [Note 1] */ 3176 MT_DENSITY4, /* .default_density (.densities[x]) */ 3177 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3178 MINUTES(1), /* .non_motion_time */ 3179 MINUTES(18), /* .io_time */ 3180 MINUTES(9), /* .rewind_time */ 3181 MINUTES(151), /* .space_time worst case directory invalid*/ 3182 MINUTES(12), /* .load_time */ 3183 MINUTES(11), /* .unload_time */ 3184 MINUTES(151) /* .erase_time */ 3185 }, 3186 3187 /* 3188 * [1] The IBM Ultrium has only one density at this time, 3189 * Compression is controlled via the Device Configuration mode page. 3190 * [2] The IBM Ultrium has only one speed (if the driver ever cares). 3191 */ 3192 { /* Structure member Description */ 3193 /* ---------------- ----------- */ 3194 "IBM Ultrium LTO", /* .name Display ("pretty") name */ 3195 19, /* .length Length of next item... */ 3196 "IBM ULTRIUM-TD1", /* .vid Vendor-product ID string */ 3197 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3198 0, /* .bsize Block size (0 = variable) */ 3199 /* .options Drive option flags: */ 3200 ST_VARIABLE | /* 00001 Supports variable length */ 3201 ST_BSF | /* 00008 Supports SPACE block fwd */ 3202 ST_BSR | /* 00010 Supports SPACE block rev */ 3203 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3204 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3205 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3206 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3207 /* ----- */ 3208 /* 18619 */ 3209 -1, /* .max_rretries Not used any more. */ 3210 -1, /* .max_wretries Not used any more. */ 3211 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 3212 MT_DENSITY4, /* .default_density (.densities[x]) */ 3213 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3214 MINUTES(1), /* .non_motion_time */ 3215 MINUTES(18), /* .io_time */ 3216 MINUTES(8), /* .rewind_time */ 3217 MINUTES(173), /* .space_time worst case directory invalid*/ 3218 MINUTES(11), /* .load_time */ 3219 MINUTES(11), /* .unload_time */ 3220 MINUTES(173) /* .erase_time */ 3221 }, 3222 3223 /* 3224 * This is the same drive as the above except for the inquiry string and 3225 * that it is a "End User Version". 3226 * [1] The IBM Ultrium has only one density at this time, 3227 * Compression is controlled via the Device Configuration mode page. 3228 * [2] The IBM Ultrium has only one speed (if the driver ever cares). 3229 */ 3230 { /* Structure member Description */ 3231 /* ---------------- ----------- */ 3232 "IBM Ultrium LTO", /* .name Display ("pretty") name */ 3233 19, /* .length Length of next item... */ 3234 "IBM ULT3580-TD1", /* .vid Vendor-product ID string */ 3235 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3236 0, /* .bsize Block size (0 = variable) */ 3237 /* .options Drive option flags: */ 3238 ST_VARIABLE | /* 00001 Supports variable length */ 3239 ST_BSF | /* 00008 Supports SPACE block fwd */ 3240 ST_BSR | /* 00010 Supports SPACE block rev */ 3241 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3242 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3243 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3244 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3245 /* ----- */ 3246 /* 18619 */ 3247 -1, /* .max_rretries Not used any more. */ 3248 -1, /* .max_wretries Not used any more. */ 3249 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 3250 MT_DENSITY4, /* .default_density (.densities[x]) */ 3251 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3252 MINUTES(1), /* .non_motion_time */ 3253 MINUTES(18), /* .io_time */ 3254 MINUTES(8), /* .rewind_time */ 3255 MINUTES(173), /* .space_time worst case directory invalid*/ 3256 MINUTES(11), /* .load_time */ 3257 MINUTES(11), /* .unload_time */ 3258 MINUTES(173) /* .erase_time */ 3259 }, 3260 3261 /* 3262 * [1] The IBM 3592 Cartridge has only one density at this time, 3263 * Compression is controlled via the Device Configuration mode page. 3264 * [2] The IBM 3592 Cartridge has only one speed (if the driver ever cares). 3265 */ 3266 { /* Structure member Description */ 3267 /* ---------------- ----------- */ 3268 "IBM 3592 Cartridge", /* .name Display ("pretty") name */ 3269 13, /* .length Length of next item... */ 3270 "IBM 03592", /* .vid Vendor-product ID string */ 3271 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3272 0, /* .bsize Block size (0 = variable) */ 3273 /* .options Drive option flags: */ 3274 ST_VARIABLE | /* 00001 Supports variable length */ 3275 ST_BSF | /* 00008 Supports SPACE block fwd */ 3276 ST_BSR | /* 00010 Supports SPACE block rev */ 3277 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 3278 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3279 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3280 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3281 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3282 /* ----- */ 3283 /* 18659 */ 3284 -1, /* .max_rretries Not used any more. */ 3285 -1, /* .max_wretries Not used any more. */ 3286 {0x51, 0x51, 0x51, 0x51}, /* .densities Density codes [Note 1] */ 3287 MT_DENSITY4, /* .default_density (.densities[x]) */ 3288 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3289 MINUTES(1), /* .non_motion_time */ 3290 MINUTES(18), /* .io_time */ 3291 MINUTES(8), /* .rewind_time */ 3292 MINUTES(14), /* .space_time worst case directory invalid*/ 3293 MINUTES(12), /* .load_time */ 3294 MINUTES(12), /* .unload_time */ 3295 MINUTES(235) /* .erase_time */ 3296 }, 3297 3298 /* 3299 * Seagate Hornet NS20 USB Travan 3300 * 3301 * NOTES 3302 * ----- 3303 * o This drive is not OEM'ed or qualified by Sun. 3304 * 3305 * [1] The NS20 Travan uses 0 or the "default" density code. 3306 * [2] The NS20 Travan has only one speed (if the driver ever cares). 3307 * [3] max_rretries and max_wretries are driver anachronisms. 3308 */ 3309 { /* Structure member Description */ 3310 /* ---------------- ----------- */ 3311 "Seagate Hornet NS20 Travan", 3312 /* .name Display ("pretty") name */ 3313 17, /* .length Length of next item... */ 3314 "Seagate STT20000A", /* .vid Vendor-product ID string */ 3315 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 3316 512, /* .bsize Block size (0 = variable) */ 3317 /* .options Drive option flags: */ 3318 ST_QIC | /* 00002 QIC tape device */ 3319 ST_BSF | /* 00008 Supports back SPACE file */ 3320 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 3321 /* ----- */ 3322 /* 0040A */ 3323 400, /* .max_rretries [Note 3] */ 3324 400, /* .max_wretries [Note 3] */ 3325 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 3326 MT_DENSITY1, /* .default_density (.densities[x]) */ 3327 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 3328 }, 3329 3330 3331 /* 3332 * Seagate Hornet Travan 40 3333 * 3334 * NOTES 3335 * ----- 3336 * o This drive is not OEM'ed or qualified by Sun. 3337 * 3338 * [1] The Travan uses 0 or the "default" density code. 3339 * [2] The Travan has only one speed (if the driver ever cares). 3340 * [3] max_rretries and max_wretries are driver anachronisms. 3341 */ 3342 { /* Structure member Description */ 3343 /* ---------------- ----------- */ 3344 "Seagate Hornet Travan 40", 3345 /* .name Display ("pretty") name */ 3346 16, /* .length Length of next item... */ 3347 "Seagate STT3401A", /* .vid Vendor-product ID string */ 3348 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 3349 512, /* .bsize Block size (0 = variable) */ 3350 /* .options Drive option flags: */ 3351 ST_QIC | /* 00002 QIC tape device */ 3352 ST_BSF | /* 00008 Supports back SPACE file */ 3353 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 3354 /* ----- */ 3355 /* 0040A */ 3356 400, /* .max_rretries [Note 3] */ 3357 400, /* .max_wretries [Note 3] */ 3358 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 3359 MT_DENSITY1, /* .default_density (.densities[x]) */ 3360 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 3361 } 3362 3363 /* END CSTYLED */ 3364 3365 }; 3366 3367 3368 const int st_ndrivetypes = (sizeof (st_drivetypes)/sizeof (st_drivetypes[0])); 3369