17c478bd9Sstevel@tonic-gate /*
27c478bd9Sstevel@tonic-gate  * CDDL HEADER START
37c478bd9Sstevel@tonic-gate  *
47c478bd9Sstevel@tonic-gate  * The contents of this file are subject to the terms of the
59b19ef81Szl  * Common Development and Distribution License (the "License").
69b19ef81Szl  * You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate  *
87c478bd9Sstevel@tonic-gate  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate  * or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate  * See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate  * and limitations under the License.
127c478bd9Sstevel@tonic-gate  *
137c478bd9Sstevel@tonic-gate  * When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate  * If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate  * fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate  * information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate  *
197c478bd9Sstevel@tonic-gate  * CDDL HEADER END
207c478bd9Sstevel@tonic-gate  */
219b19ef81Szl 
227c478bd9Sstevel@tonic-gate /*
2339b361b2SRichard Bean  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
247c478bd9Sstevel@tonic-gate  * Use is subject to license terms.
257c478bd9Sstevel@tonic-gate  */
267c478bd9Sstevel@tonic-gate 
277c478bd9Sstevel@tonic-gate #include <sys/scsi/scsi.h>
287c478bd9Sstevel@tonic-gate #include <sys/mtio.h>
297c478bd9Sstevel@tonic-gate #include <sys/condvar.h>
307c478bd9Sstevel@tonic-gate #include <sys/kstat.h>
317c478bd9Sstevel@tonic-gate #include <sys/scsi/targets/stdef.h>
327c478bd9Sstevel@tonic-gate 
3339b361b2SRichard Bean const char st_conf_version[] = "st_conf.c 1.92 08/10/17";
347c478bd9Sstevel@tonic-gate /*
357c478bd9Sstevel@tonic-gate  * General
367c478bd9Sstevel@tonic-gate  * -------
377c478bd9Sstevel@tonic-gate  * o MT_DENSITYx counts from 1..4, rather than 0..3.
387c478bd9Sstevel@tonic-gate  * o Some entries specify a value for the 'length' member that is
397c478bd9Sstevel@tonic-gate  *   less than the actual length of the 'vid' member. This is done
407c478bd9Sstevel@tonic-gate  *   intentionally to allow the comparison to succeed for different
417c478bd9Sstevel@tonic-gate  *   drives.
427c478bd9Sstevel@tonic-gate  */
437c478bd9Sstevel@tonic-gate 
447c478bd9Sstevel@tonic-gate /*
457c478bd9Sstevel@tonic-gate  * Drive Tables.
467c478bd9Sstevel@tonic-gate  *
477c478bd9Sstevel@tonic-gate  * The structure and option definitions can be
487c478bd9Sstevel@tonic-gate  * found in <sys/scsi/targets/stdef.h>.
497c478bd9Sstevel@tonic-gate  *
507c478bd9Sstevel@tonic-gate  * Note: that blocksize should be a power of two
517c478bd9Sstevel@tonic-gate  * for fixed-length recording devices.
527c478bd9Sstevel@tonic-gate  *
537c478bd9Sstevel@tonic-gate  * Note: the speed codes are unused at present.
547c478bd9Sstevel@tonic-gate  * The driver turns around whatever is reported
557c478bd9Sstevel@tonic-gate  * from the drive via the mode sense.
567c478bd9Sstevel@tonic-gate  *
577c478bd9Sstevel@tonic-gate  * Note: the read retry and write retry counts
587c478bd9Sstevel@tonic-gate  * are there to provide a limit until warning
597c478bd9Sstevel@tonic-gate  * messages are printed.
607c478bd9Sstevel@tonic-gate  *
617c478bd9Sstevel@tonic-gate  *
627c478bd9Sstevel@tonic-gate  * Note: For drives that are not in this table....
637c478bd9Sstevel@tonic-gate  *
647c478bd9Sstevel@tonic-gate  * The first open of the device will cause a MODE SENSE command
657c478bd9Sstevel@tonic-gate  * to be sent. From that we can determine block size. If block
667c478bd9Sstevel@tonic-gate  * size is zero, than this drive is in variable-record length
677c478bd9Sstevel@tonic-gate  * mode. The driver uses the SCSI-2 specification density codes in
687c478bd9Sstevel@tonic-gate  * order to attempt to determine what kind of sequential access
697c478bd9Sstevel@tonic-gate  * device this is. This will allow determination of 1/4" cartridge,
707c478bd9Sstevel@tonic-gate  * 1/2" cartridge, some helical scan (3.81 && 8 mm cartridge) and
717c478bd9Sstevel@tonic-gate  * 1/2" reel tape devices. The driver will print what it finds and is
727c478bd9Sstevel@tonic-gate  * assuming to the console. If the device you have hooked up returns
737c478bd9Sstevel@tonic-gate  * the default density code (0) after power up, the drive cannot
747c478bd9Sstevel@tonic-gate  * determine what kind of drive it might be, so it will assume that
757c478bd9Sstevel@tonic-gate  * it is an unknown 1/4" cartridge tape (QIC).
767c478bd9Sstevel@tonic-gate  *
777c478bd9Sstevel@tonic-gate  * If the drive is determined in this way to be a 1/2" 9-track reel
787c478bd9Sstevel@tonic-gate  * type device, an attempt will be mode to put it in Variable
797c478bd9Sstevel@tonic-gate  * record length mode.
807c478bd9Sstevel@tonic-gate  *
817c478bd9Sstevel@tonic-gate  * Generic drives are assumed to support only the long erase option
827c478bd9Sstevel@tonic-gate  * and will not to be run in buffered mode.
837c478bd9Sstevel@tonic-gate  */
847c478bd9Sstevel@tonic-gate 
857c478bd9Sstevel@tonic-gate /*
867c478bd9Sstevel@tonic-gate  * Format for Tape Drive Entry
877c478bd9Sstevel@tonic-gate  *
887c478bd9Sstevel@tonic-gate  * Please maintain the format currently in use for defining the properties
897c478bd9Sstevel@tonic-gate  * associated with each tape drive. This format is intended to make the
907c478bd9Sstevel@tonic-gate  * entries more readable and help increase the accuracy of the entries.
917c478bd9Sstevel@tonic-gate  * See the actual entries for examples of what they should look like.
927c478bd9Sstevel@tonic-gate  *
937c478bd9Sstevel@tonic-gate  * Important points to note about the format:
947c478bd9Sstevel@tonic-gate  *
957c478bd9Sstevel@tonic-gate  * 1. The opening and closing braces are indented 2 spaces.
967c478bd9Sstevel@tonic-gate  * 2. Each line in the entry is indented 4 spaces.
977c478bd9Sstevel@tonic-gate  * 3. The numerical values and text in the .options comments are indented two
987c478bd9Sstevel@tonic-gate  *    spaces in the comment block.
997c478bd9Sstevel@tonic-gate  * 4. The maximum line width is 80 columns; do not exceed this.
1007c478bd9Sstevel@tonic-gate  * 5. The comment delimiters should line up, per the example.
1017c478bd9Sstevel@tonic-gate  * 6. The OR symbol (|) should line up for multiple options.
1027c478bd9Sstevel@tonic-gate  * 7. Hexadecimal values should be capitalized, for consistency.
1037c478bd9Sstevel@tonic-gate  * 8. The leading / in the comment block header is indented 2 spaces and the
1047c478bd9Sstevel@tonic-gate  *    susequent *'s should all line up.
1057c478bd9Sstevel@tonic-gate  * 9. Order of the entries is very important. There are several groups of
1067c478bd9Sstevel@tonic-gate  *    entries where the last entry in the grouping acts as a catch-all. If you
1077c478bd9Sstevel@tonic-gate  *    place an entry after the catch-all, it will never be used by the driver.
1087c478bd9Sstevel@tonic-gate  * 10. TABs should not be used anywhere between the BEGIN CSTYLED and
1097c478bd9Sstevel@tonic-gate  *    END CSTYLED lines.
1107c478bd9Sstevel@tonic-gate  */
1117c478bd9Sstevel@tonic-gate 
1127c478bd9Sstevel@tonic-gate /*
1137c478bd9Sstevel@tonic-gate  * Supported Drive Options
1147c478bd9Sstevel@tonic-gate  *
1157c478bd9Sstevel@tonic-gate  * The descriptions for the supported drive options are taken from stdef.h.
1167c478bd9Sstevel@tonic-gate  *
1177c478bd9Sstevel@tonic-gate  * ST_VARIABLE                          Device supports variable length record
1187c478bd9Sstevel@tonic-gate  *                                      sizes.
1197c478bd9Sstevel@tonic-gate  * ST_QIC                               QIC tape device.
1207c478bd9Sstevel@tonic-gate  * ST_REEL                              1/2-inch reel tape device.
1217c478bd9Sstevel@tonic-gate  * ST_BSF                               Device supports backspace file as in
1227c478bd9Sstevel@tonic-gate  *                                      mt(1) bsf backspace over EOF marks.
1237c478bd9Sstevel@tonic-gate  *                                      Devices not supporting bsf will fail
1247c478bd9Sstevel@tonic-gate  *                                      with ENOTTY upon use of bsf.
1257c478bd9Sstevel@tonic-gate  * ST_BSR                               Device supports backspace record as in
1267c478bd9Sstevel@tonic-gate  *                                      mt(1) bsr : backspace over records. If
1277c478bd9Sstevel@tonic-gate  *                                      the device does not support bsr, the st
1287c478bd9Sstevel@tonic-gate  *                                      driver emulates the action by rewinding
1297c478bd9Sstevel@tonic-gate  *                                      the tape and using forward space file
1307c478bd9Sstevel@tonic-gate  *                                      (fsf) to the correct file and then uses
1317c478bd9Sstevel@tonic-gate  *                                      forward space record (fsr) to the
1327c478bd9Sstevel@tonic-gate  *                                      correct record.
1337c478bd9Sstevel@tonic-gate  * ST_LONG_ERASE                        Device needs a longer time than normal
1347c478bd9Sstevel@tonic-gate  *                                      to erase.
1357c478bd9Sstevel@tonic-gate  * ST_AUTODEN_OVERRIDE                  Autodensity override flag Device can
1367c478bd9Sstevel@tonic-gate  *                                      figure out the tape density
1377c478bd9Sstevel@tonic-gate  *                                      automatically,without issuing a mode-
1387c478bd9Sstevel@tonic-gate  *                                      select/mode-sense.
1397c478bd9Sstevel@tonic-gate  * ST_NOBUF                             Don't use buffered mode. This disables
1407c478bd9Sstevel@tonic-gate  *                                      the device's ability for buffered writes
1417c478bd9Sstevel@tonic-gate  *                                      i.e. The device acknowledges write
1427c478bd9Sstevel@tonic-gate  *                                      completion after the data is written to
1437c478bd9Sstevel@tonic-gate  *                                      the device's buffer, but before all the
1447c478bd9Sstevel@tonic-gate  *                                      data is actually written to tape.
1457c478bd9Sstevel@tonic-gate  * ST_RESERVED_BIT1                     Reserved bit parity while talking to it.
1467c478bd9Sstevel@tonic-gate  * ST_KNOWS_EOD                         Device knows when EOD (End of Data) has
1477c478bd9Sstevel@tonic-gate  *                                      been reached. If the device knows EOD,
1487c478bd9Sstevel@tonic-gate  *                                      st uses fast file skipping. If it does
1497c478bd9Sstevel@tonic-gate  *                                      not know EOD, file skipping happens one
1507c478bd9Sstevel@tonic-gate  *                                      file at a time.
1517c478bd9Sstevel@tonic-gate  * ST_UNLOADABLE                        Device will not complain if the st
1527c478bd9Sstevel@tonic-gate  *                                      driver is unloaded & loaded again;
1537c478bd9Sstevel@tonic-gate  *                                      e.g. will return the correct inquiry
1547c478bd9Sstevel@tonic-gate  *                                      string.
1557c478bd9Sstevel@tonic-gate  * ST_SOFT_ERROR_REPORTING              Do request or log sense on close to
1567c478bd9Sstevel@tonic-gate  *                                      report soft errors.Currently only
1577c478bd9Sstevel@tonic-gate  *                                      Exabyte and DAT drives support this
1587c478bd9Sstevel@tonic-gate  *                                      feature.
1597c478bd9Sstevel@tonic-gate  * ST_LONG_TIMEOUTS                     Device needs 5 times longer timeouts
1607c478bd9Sstevel@tonic-gate  *                                      for normal operation.
1617c478bd9Sstevel@tonic-gate  * ST_BUFFERED_WRITES                   The data is buffered in the driver and
1627c478bd9Sstevel@tonic-gate  *                                      pre-acked to the application.
1637c478bd9Sstevel@tonic-gate  * ST_NO_RECSIZE_LIMIT                  For variable record size devices only.
1647c478bd9Sstevel@tonic-gate  *                                      If flag is set,then don't limit record
1657c478bd9Sstevel@tonic-gate  *                                      size to 64k as in pre-Solaris 2.4
1667c478bd9Sstevel@tonic-gate  *                                      releases. The only limit on the record
1677c478bd9Sstevel@tonic-gate  *                                      size will be the max record size the
1687c478bd9Sstevel@tonic-gate  *                                      device can handle or the max DMA
1697c478bd9Sstevel@tonic-gate  *                                      transfer size of the machine, which ever
1707c478bd9Sstevel@tonic-gate  *                                      is smaller. Beware of incompatabilities
1717c478bd9Sstevel@tonic-gate  *                                      with tapes of pre-Solaris 2.4 OS's
1727c478bd9Sstevel@tonic-gate  *                                      written with large (>64k) block sizes,
1737c478bd9Sstevel@tonic-gate  *                                      as their true block size is a max of
1747c478bd9Sstevel@tonic-gate  *                                      approx 64k.
1757c478bd9Sstevel@tonic-gate  * ST_MODE_SEL_COMP                     Use mode select of device configuration
1767c478bd9Sstevel@tonic-gate  *                                      page (0x10) to enable/disable
1777c478bd9Sstevel@tonic-gate  *                                      compression instead of density codes
1787c478bd9Sstevel@tonic-gate  *                                      for the "c" and "u" devices.
1797c478bd9Sstevel@tonic-gate  * ST_NO_RESERVE_RELEASE                For devices which do not support
1807c478bd9Sstevel@tonic-gate  *                                      RESERVE/RELEASE SCSI command. If this
1817c478bd9Sstevel@tonic-gate  *                                      is enabled then RESERVE/RELEASE would
1827c478bd9Sstevel@tonic-gate  *                                      not be used during open/close for High
1837c478bd9Sstevel@tonic-gate  *                                      Availability.
1847c478bd9Sstevel@tonic-gate  * ST_READ_IGNORE_ILI                   This flag is only applicable to
1857c478bd9Sstevel@tonic-gate  *                                      variable block devices which support
1867c478bd9Sstevel@tonic-gate  *                                      the SILI bit option. It indicates that
1877c478bd9Sstevel@tonic-gate  *                                      the SILI bit will be ignored during
1887c478bd9Sstevel@tonic-gate  *                                      reads.
1897c478bd9Sstevel@tonic-gate  * ST_READ_IGNORE_EOFS                  When this flag is set two EOF marks do
1907c478bd9Sstevel@tonic-gate  *                                      not indicate an EOM. This option is
1917c478bd9Sstevel@tonic-gate  *                                      only supported on 1/2" reel tapes.
1927c478bd9Sstevel@tonic-gate  * ST_SHORT_FILEMARKS                   This option applies only to EXABYTE 8mm
1937c478bd9Sstevel@tonic-gate  *                                      tape drives which support short
1947c478bd9Sstevel@tonic-gate  *                                      filemarks. When this flag is set, short
1957c478bd9Sstevel@tonic-gate  *                                      filemarks will be used for writing
1967c478bd9Sstevel@tonic-gate  *                                      filemarks.
1977c478bd9Sstevel@tonic-gate  * ST_EJECT_ON_CHANGER_FAILURE          When this flag is set and the tape is
1987c478bd9Sstevel@tonic-gate  *                                      trapped in the medium changer, the
1997c478bd9Sstevel@tonic-gate  *                                      tape is automatically ejected.
2007c478bd9Sstevel@tonic-gate  * ST_RETRY_ON_RECOVERED_DEFERRED_ERROR This option applies only to IBM MAGSTAR
2017c478bd9Sstevel@tonic-gate  *                                      3590. If this flag is set, the st
2027c478bd9Sstevel@tonic-gate  *                                      driver will retry the last cmd if the
2037c478bd9Sstevel@tonic-gate  *                                      last error cause a check condition with
2047c478bd9Sstevel@tonic-gate  *                                      error code 0x71 and sense code 0x01.
2057c478bd9Sstevel@tonic-gate  */
2067c478bd9Sstevel@tonic-gate 
2077c478bd9Sstevel@tonic-gate /*
2087c478bd9Sstevel@tonic-gate  * Values Corresponding To The Supported Drive Options Flags
2097c478bd9Sstevel@tonic-gate  *
2107c478bd9Sstevel@tonic-gate  * ST_VARIABLE                            0x000001
2117c478bd9Sstevel@tonic-gate  * ST_QIC                                 0x000002
2127c478bd9Sstevel@tonic-gate  * ST_REEL                                0x000004
2137c478bd9Sstevel@tonic-gate  * ST_BSF                                 0x000008
2147c478bd9Sstevel@tonic-gate  * ST_BSR                                 0x000010
2157c478bd9Sstevel@tonic-gate  * ST_LONG_ERASE                          0x000020
2167c478bd9Sstevel@tonic-gate  * ST_AUTODEN_OVERRIDE                    0x000040
2177c478bd9Sstevel@tonic-gate  * ST_NOBUF                               0x000080
2187c478bd9Sstevel@tonic-gate  * ST_RESERVED_BIT1                       0x000100
2197c478bd9Sstevel@tonic-gate  * ST_KNOWS_EOD                           0x000200
2207c478bd9Sstevel@tonic-gate  * ST_UNLOADABLE                          0x000400
2217c478bd9Sstevel@tonic-gate  * ST_SOFT_ERROR_REPORTING                0x000800
2227c478bd9Sstevel@tonic-gate  * ST_LONG_TIMEOUT                        0x001000
2237c478bd9Sstevel@tonic-gate  * ST_BUFFERED_WRITES                     0x004000
2247c478bd9Sstevel@tonic-gate  * ST_NO_RECSIZE_LIMIT                    0x008000
2257c478bd9Sstevel@tonic-gate  * ST_MODE_SEL_COMP                       0x010000
2267c478bd9Sstevel@tonic-gate  * ST_NO_RESERVE_RELEASE                  0x020000
2277c478bd9Sstevel@tonic-gate  * ST_READ_IGNORE_ILI                     0x040000
2287c478bd9Sstevel@tonic-gate  * ST_READ_IGNORE_EOFS                    0x080000
2297c478bd9Sstevel@tonic-gate  * ST_SHORT_FILEMARKS                     0x100000
2307c478bd9Sstevel@tonic-gate  * ST_EJECT_ON_CHANGER_FAILURE            0x200000
2317c478bd9Sstevel@tonic-gate  * ST_RETRY_ON_RECOVERED_DEFERRED_ERROR   0x400000
2327c478bd9Sstevel@tonic-gate  */
2337c478bd9Sstevel@tonic-gate 
2347c478bd9Sstevel@tonic-gate const struct st_drivetype st_drivetypes[] =
2357c478bd9Sstevel@tonic-gate {
2367c478bd9Sstevel@tonic-gate 	/* BEGIN CSTYLED */
2377c478bd9Sstevel@tonic-gate   /*
2387c478bd9Sstevel@tonic-gate    * Anritsu 1/2" reel
2397c478bd9Sstevel@tonic-gate    *
2407c478bd9Sstevel@tonic-gate    *     NOTES
2417c478bd9Sstevel@tonic-gate    *     -----
2427c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
2437c478bd9Sstevel@tonic-gate    *
2447c478bd9Sstevel@tonic-gate    * [1] The Anritsu 1/2" reel has two density codes (or 0 for "default").
2457c478bd9Sstevel@tonic-gate    * [2] The Anritsu 1/2" reel has only one speed (if the driver ever cares).
2467c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
2477c478bd9Sstevel@tonic-gate    */
2487c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
2497c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
2507c478bd9Sstevel@tonic-gate     "Unisys 1/2\" Reel",      /* .name            Display ("pretty") name     */
2517c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
2527c478bd9Sstevel@tonic-gate     "ANRITSU DMT2120",        /* .vid             Vendor-product ID string    */
2537c478bd9Sstevel@tonic-gate     ST_TYPE_ANRITSU,          /* .type            Numeric type (cf. mtio.h)   */
2547c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
2557c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
2567c478bd9Sstevel@tonic-gate     ST_VARIABLE  |            /*    00001           Supports variable length  */
2577c478bd9Sstevel@tonic-gate     ST_REEL      |            /*    00004           1/2-inch reel tape device */
2587c478bd9Sstevel@tonic-gate     ST_BSF       |            /*    00008           Supports SPACE block fwd  */
2597c478bd9Sstevel@tonic-gate     ST_BSR       |            /*    00010           Supports SPACE block rev  */
2607c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
2617c478bd9Sstevel@tonic-gate                               /*    -----                                     */
2627c478bd9Sstevel@tonic-gate                               /*    0041D                                     */
2637c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
2647c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
2657c478bd9Sstevel@tonic-gate     {0x00, 0x02, 0x03, 0x03}, /* .densities       Density codes [Note 1]      */
2667c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
2677c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
2687c478bd9Sstevel@tonic-gate   },
2697c478bd9Sstevel@tonic-gate 
2707c478bd9Sstevel@tonic-gate   /*
2717c478bd9Sstevel@tonic-gate    * Archive QIC-150 1/4" cartridge
2727c478bd9Sstevel@tonic-gate    *
2737c478bd9Sstevel@tonic-gate    *     NOTES
2747c478bd9Sstevel@tonic-gate    *     -----
2757c478bd9Sstevel@tonic-gate    *  o The manual for the Archive drive claims that this drive
2767c478bd9Sstevel@tonic-gate    *    can backspace filemarks. In practice this doens't always
2777c478bd9Sstevel@tonic-gate    *    seem to be the case.
2787c478bd9Sstevel@tonic-gate    * [1] The QIC-150 uses 0 or "default" density.
2797c478bd9Sstevel@tonic-gate    * [2] The QIC-150 has only one speed (if the driver ever cares).
2807c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
2817c478bd9Sstevel@tonic-gate    */
2827c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
2837c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
2847c478bd9Sstevel@tonic-gate     "Archive QIC-150",        /* .name            Display ("pretty") name     */
2857c478bd9Sstevel@tonic-gate     13,                       /* .length          Length of next item...      */
2867c478bd9Sstevel@tonic-gate     "ARCHIVE VIPER",          /* .vid             Vendor-product ID string    */
2877c478bd9Sstevel@tonic-gate     ST_TYPE_ARCHIVE,          /* .type            Numeric type (cf. mtio.h)   */
2887c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
2897c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
2907c478bd9Sstevel@tonic-gate     ST_QIC              |     /*    00002           QIC tape device           */
2917c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040           Autodensity override flag */
2927c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
2937c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
2947c478bd9Sstevel@tonic-gate                               /*    -----                                     */
2957c478bd9Sstevel@tonic-gate                               /*    00642                                     */
2967c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
2977c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
2987c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
2997c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
3007c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
3017c478bd9Sstevel@tonic-gate   },
3027c478bd9Sstevel@tonic-gate 
3037c478bd9Sstevel@tonic-gate   /*
3047c478bd9Sstevel@tonic-gate    * Archive Python 04106 4mm 2GB drive
3057c478bd9Sstevel@tonic-gate    *
3067c478bd9Sstevel@tonic-gate    *     NOTES
3077c478bd9Sstevel@tonic-gate    *     -----
3087c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
3097c478bd9Sstevel@tonic-gate    *
3107c478bd9Sstevel@tonic-gate    * [1] The Python 04106 has only one density, 0x42 (or 0 for "default").
3117c478bd9Sstevel@tonic-gate    * [2] The Python 04106 has only one speed (if the driver ever cares).
3127c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
3137c478bd9Sstevel@tonic-gate    * [4] The manufacturer recommends 0x2c ("MT_ISPYTHON") here,
3147c478bd9Sstevel@tonic-gate    *     even though ST_TYPE_PYTHON is recommended.  For con-
3157c478bd9Sstevel@tonic-gate    *     sistency, let's not fight it.
3167c478bd9Sstevel@tonic-gate    */
3177c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
3187c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
3197c478bd9Sstevel@tonic-gate     "Seagate Scorpion 24 DDS3 DAT",
3207c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
3217c478bd9Sstevel@tonic-gate     20,                       /* .length          Length of next item...      */
3227c478bd9Sstevel@tonic-gate     "ARCHIVE Python 04106",   /* .vid             Vendor-product ID string    */
3237c478bd9Sstevel@tonic-gate     MT_ISPYTHON,              /* .type            Numeric type  [Note 4]      */
3247c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
3257c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
3267c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
3277c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
3287c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
3297c478bd9Sstevel@tonic-gate     ST_LONG_ERASE      |      /*    00020           Needs extra time to erase */
3307c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
3317c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
3327c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
3337c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
3347c478bd9Sstevel@tonic-gate                               /*    -----                                     */
3357c478bd9Sstevel@tonic-gate                               /*    09639                                     */
3367c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
3377c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
3387c478bd9Sstevel@tonic-gate     {0x00, 0x8C, 0x8C, 0x8C}, /* .densities       Density codes [Note 1]      */
3397c478bd9Sstevel@tonic-gate     MT_DENSITY3,              /* .default_density (.densities[x])             */
3407c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
3417c478bd9Sstevel@tonic-gate   },
3427c478bd9Sstevel@tonic-gate 
3437c478bd9Sstevel@tonic-gate   /*
3447c478bd9Sstevel@tonic-gate    * Archive/Conner CTDX004 4mm DAT
3457c478bd9Sstevel@tonic-gate    *
3467c478bd9Sstevel@tonic-gate    *     NOTES
3477c478bd9Sstevel@tonic-gate    *     -----
3487c478bd9Sstevel@tonic-gate    * [1] The CTDX004 uses 0 or the "default" density code.
3497c478bd9Sstevel@tonic-gate    * [2] The CTDX004 has only one speed (if the driver ever cares).
3507c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
3517c478bd9Sstevel@tonic-gate    * [4] Data is buffered in the driver and pre-acked to the application. This
3527c478bd9Sstevel@tonic-gate    *     is only supported in 2.5.1.
3537c478bd9Sstevel@tonic-gate    */
3547c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
3557c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
3567c478bd9Sstevel@tonic-gate     "Archive/Conner CTDX004 4mm DAT",
3577c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
3587c478bd9Sstevel@tonic-gate     20,                       /* .length          Length of next item...      */
3597c478bd9Sstevel@tonic-gate     "ARCHIVE Python 28388",   /* .vid             Vendor-product ID string    */
3607c478bd9Sstevel@tonic-gate     ST_TYPE_PYTHON,           /* .type            Numeric type (cf. mtio.h)   */
3617c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
3627c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
3637c478bd9Sstevel@tonic-gate     ST_VARIABLE             | /*    00001           Supports variable length  */
3647c478bd9Sstevel@tonic-gate     ST_BSF                  | /*    00008           Supports SPACE block fwd  */
3657c478bd9Sstevel@tonic-gate     ST_BSR                  | /*    00010           Supports SPACE block rev  */
3667c478bd9Sstevel@tonic-gate     ST_LONG_ERASE           | /*    00020           Needs extra time to erase */
3677c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD            | /*    00200           Recognizes end-of-data    */
3687c478bd9Sstevel@tonic-gate     ST_UNLOADABLE           | /*    00400           Driver can be unloaded    */
3697c478bd9Sstevel@tonic-gate     ST_SOFT_ERROR_REPORTING | /*    00800           Reports errors on close   */
3707c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS        | /*    01000           More time for some ops    */
3717c478bd9Sstevel@tonic-gate     ST_BUFFERED_WRITES      | /*    04000           [Note 4]                  */
3727c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
3737c478bd9Sstevel@tonic-gate                               /*    -----                                     */
3747c478bd9Sstevel@tonic-gate                               /*    0DE39                                     */
3757c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
3767c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
3777c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
3787c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density (.densities[x])             */
3797c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
3807c478bd9Sstevel@tonic-gate   },
3817c478bd9Sstevel@tonic-gate 
3827c478bd9Sstevel@tonic-gate   /*
3837c478bd9Sstevel@tonic-gate    * Archive Python 4mm 2GB drive
3847c478bd9Sstevel@tonic-gate    *
3857c478bd9Sstevel@tonic-gate    *     NOTES
3867c478bd9Sstevel@tonic-gate    *     -----
3877c478bd9Sstevel@tonic-gate    *  o This must be the last entry in the list of Python drives, since it
3887c478bd9Sstevel@tonic-gate    *    acts as a catch-all for any Python drive not listed above.
3897c478bd9Sstevel@tonic-gate    *
3907c478bd9Sstevel@tonic-gate    * [1] The Archive Python 4mm has only one density, 0x8c (or 0 for "default").
3917c478bd9Sstevel@tonic-gate    * [2] The Archive Python 4mm has only one speed (if the driver ever cares).
3927c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
3937c478bd9Sstevel@tonic-gate    * [4] Do a request or log sense on close to report soft errors.
3947c478bd9Sstevel@tonic-gate    */
3957c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
3967c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
397*55fea89dSDan Cross     "Archive Python 4mm Helical Scan",
3987c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
3997c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
4007c478bd9Sstevel@tonic-gate     "ARCHIVE Python",         /* .vid             Vendor-product ID string    */
4017c478bd9Sstevel@tonic-gate     ST_TYPE_PYTHON,           /* .type            Numeric type (cf. mtio.h)   */
4027c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
4037c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
4047c478bd9Sstevel@tonic-gate     ST_VARIABLE             | /*    00001           Supports variable length  */
4057c478bd9Sstevel@tonic-gate     ST_BSF                  | /*    00008           Supports SPACE block fwd  */
4067c478bd9Sstevel@tonic-gate     ST_BSR                  | /*    00010           Supports SPACE block rev  */
4077c478bd9Sstevel@tonic-gate     ST_LONG_ERASE           | /*    00020           Needs extra time to erase */
4087c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD            | /*    00200           Recognizes end-of-data    */
4097c478bd9Sstevel@tonic-gate     ST_UNLOADABLE           | /*    00400           Driver can be unloaded    */
4107c478bd9Sstevel@tonic-gate     ST_SOFT_ERROR_REPORTING | /*    00800           Error reporting [Note 4]  */
4117c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS        | /*    01000           More time for some ops    */
4127c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
4137c478bd9Sstevel@tonic-gate                               /*    -----                                     */
4147c478bd9Sstevel@tonic-gate                               /*    09E39                                     */
4157c478bd9Sstevel@tonic-gate     5000,                     /* .max_rretries    [Note 3]                    */
4167c478bd9Sstevel@tonic-gate     5000,                     /* .max_wretries    [Note 3]                    */
4177c478bd9Sstevel@tonic-gate     {0x00, 0x8C, 0x8C, 0x8C}, /* .densities       Density codes [Note 1]      */
4187c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
4197c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
4207c478bd9Sstevel@tonic-gate   },
4217c478bd9Sstevel@tonic-gate 
4227c478bd9Sstevel@tonic-gate   /*
4237c478bd9Sstevel@tonic-gate    * Benchmark DLT1
4247c478bd9Sstevel@tonic-gate    *
4257c478bd9Sstevel@tonic-gate    *     NOTES
4267c478bd9Sstevel@tonic-gate    *     -----
4277c478bd9Sstevel@tonic-gate    * [1] The DLT1 reads several tape formats, but the st driver supports
4287c478bd9Sstevel@tonic-gate    *     only DLT1 native.
4297c478bd9Sstevel@tonic-gate    * [2] The DLT1 has only one speed (if the driver ever cares).
4307c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
4317c478bd9Sstevel@tonic-gate    * [4] The DLT1 has Density codes that turn on and off compression however
4327c478bd9Sstevel@tonic-gate    *     the data compression enable overrides them.
4337c478bd9Sstevel@tonic-gate    */
4347c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
4357c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
4367c478bd9Sstevel@tonic-gate     "Benchmark DLT1",         /* .name            Display ("pretty") name     */
4377c478bd9Sstevel@tonic-gate     12,                       /* .length          Length of next item...      */
4387c478bd9Sstevel@tonic-gate     "BNCHMARKDLT1",           /* .vid             Vendor-product ID string    */
4397c478bd9Sstevel@tonic-gate     ST_TYPE_BMDLT1,           /* .type            Numeric type (cf. mtio.h)   */
4407c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
4417c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
4427c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
4437c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
4447c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
4457c478bd9Sstevel@tonic-gate     ST_LONG_ERASE       |     /*    00020           Needs extra time to erase */
4467c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
4477c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
4487c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS    |     /*    01000           More time for some ops    */
4497c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
4507c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           [Note 4]                  */
4517c478bd9Sstevel@tonic-gate                               /*    -----                                     */
4527c478bd9Sstevel@tonic-gate                               /*    19639                                     */
4537c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
4547c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
4557c478bd9Sstevel@tonic-gate     {0x40, 0x40, 0x40, 0x40}, /* .densities       Density codes [Note 1]      */
4567c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
4577c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
4587c478bd9Sstevel@tonic-gate   },
4597c478bd9Sstevel@tonic-gate 
4607c478bd9Sstevel@tonic-gate 
4617c478bd9Sstevel@tonic-gate 
4627c478bd9Sstevel@tonic-gate   /*
4637c478bd9Sstevel@tonic-gate    * CDC 1/2" cartridge
4647c478bd9Sstevel@tonic-gate    *
4657c478bd9Sstevel@tonic-gate    *     NOTES
4667c478bd9Sstevel@tonic-gate    *     -----
4677c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
4687c478bd9Sstevel@tonic-gate    *
4697c478bd9Sstevel@tonic-gate    * [1] The CDC 1/2" cartridge uses 0 or the "default" density code.
4707c478bd9Sstevel@tonic-gate    * [2] The CDC 1/2" cartridge has only one speed (if the driver ever cares).
4717c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
4727c478bd9Sstevel@tonic-gate    */
4737c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
4747c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
4757c478bd9Sstevel@tonic-gate     "CDC 1/2\" Cartridge",    /* .name            Display ("pretty") name     */
4767c478bd9Sstevel@tonic-gate     3,                        /* .length          Length of next item...      */
4777c478bd9Sstevel@tonic-gate     "LMS",                    /* .vid             Vendor-product ID string    */
4787c478bd9Sstevel@tonic-gate     ST_TYPE_CDC,              /* .type            Numeric type (cf. mtio.h)   */
4797c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
4807c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
4817c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
4827c478bd9Sstevel@tonic-gate     ST_QIC              |     /*    0x002           QIC tape device           */
4837c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
4847c478bd9Sstevel@tonic-gate     ST_LONG_ERASE       |     /*    00020           Needs extra time to erase */
4857c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040           Autodensity override flag */
4867c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
4877c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
4887c478bd9Sstevel@tonic-gate                               /*    -----                                     */
4897c478bd9Sstevel@tonic-gate                               /*    0066B                                     */
4907c478bd9Sstevel@tonic-gate     300,                      /* .max_rretries    [Note 3]                    */
4917c478bd9Sstevel@tonic-gate     300,                      /* .max_wretries    [Note 3]                    */
4927c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
4937c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
4947c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
4957c478bd9Sstevel@tonic-gate   },
4967c478bd9Sstevel@tonic-gate 
4977c478bd9Sstevel@tonic-gate    /*
4987c478bd9Sstevel@tonic-gate    * Emulex MT-02 controller for 1/4" cartridge
4997c478bd9Sstevel@tonic-gate    *
5007c478bd9Sstevel@tonic-gate    *     NOTES
5017c478bd9Sstevel@tonic-gate    *     -----
5027c478bd9Sstevel@tonic-gate    *  o The EMULEX MT-02 adheres to CCS level 0, and thus
5037c478bd9Sstevel@tonic-gate    *    returns nothing of interest for the INQUIRY command
5047c478bd9Sstevel@tonic-gate    *    past the 'response data format' field (which will be
5057c478bd9Sstevel@tonic-gate    *    zero). The driver will recognize this and assume that
5067c478bd9Sstevel@tonic-gate    *    a drive that so responds is actually an MT-02 (there
5077c478bd9Sstevel@tonic-gate    *    is no other way to really do this, awkward as it
5087c478bd9Sstevel@tonic-gate    *    may seem).
5097c478bd9Sstevel@tonic-gate    *
5107c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
5117c478bd9Sstevel@tonic-gate    *
5127c478bd9Sstevel@tonic-gate    * [1] Low density is a vendor unique density code.
5137c478bd9Sstevel@tonic-gate    *     This gives us 9 Track QIC-11. Supposedly the MT02 can
5147c478bd9Sstevel@tonic-gate    *     read 4 Track QIC-11 while in this mode. If that doesn't
5157c478bd9Sstevel@tonic-gate    *     work, change one of the duplicated QIC-24 fields to 0x4.
5167c478bd9Sstevel@tonic-gate    * [2] The MT-02 has only one speed (if the driver ever cares).
5177c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
5187c478bd9Sstevel@tonic-gate    */
5197c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
5207c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
5217c478bd9Sstevel@tonic-gate     "Emulex MT02 QIC-11/QIC-24",
5227c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
5237c478bd9Sstevel@tonic-gate     12,                       /* .length          Length of next item...      */
5247c478bd9Sstevel@tonic-gate     "Emulex  MT02",           /* .vid             Vendor-product ID string    */
5257c478bd9Sstevel@tonic-gate     ST_TYPE_EMULEX,           /* .type            Numeric type (cf. mtio.h)   */
5267c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
5277c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
5287c478bd9Sstevel@tonic-gate     ST_QIC       |            /*    00002           QIC tape device           */
5297c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD |            /*    00200           Recognizes end-of-data    */
5307c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
5317c478bd9Sstevel@tonic-gate                               /*    -----                                     */
5327c478bd9Sstevel@tonic-gate                               /*    00602                                     */
5337c478bd9Sstevel@tonic-gate     130,                      /* .max_rretries    [Note 3]                    */
5347c478bd9Sstevel@tonic-gate     130,                      /* .max_wretries    [Note 3]                    */
5357c478bd9Sstevel@tonic-gate     {0x84, 0x05, 0x05, 0x05}, /* .densities       Density codes [Note 1]      */
5367c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
5377c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
5387c478bd9Sstevel@tonic-gate   },
539*55fea89dSDan Cross 
5407c478bd9Sstevel@tonic-gate   /*
5417c478bd9Sstevel@tonic-gate    * Exabyte 8900 8mm helical scan drive (also called Mammoth)
5427c478bd9Sstevel@tonic-gate    *
5437c478bd9Sstevel@tonic-gate    *     NOTES
5447c478bd9Sstevel@tonic-gate    *     -----
5457c478bd9Sstevel@tonic-gate    * [1] Compression on the 8900 is controlled via the Device Configuration mode
5467c478bd9Sstevel@tonic-gate    *     page or the Data Compression page (either one). Even when enabled, the
5477c478bd9Sstevel@tonic-gate    *     8900 automatically disables compression on-the-fly if it determines
5487c478bd9Sstevel@tonic-gate    *     that it cannot achieve a reasonable compression ratio on the data.
5497c478bd9Sstevel@tonic-gate    * [2] The 8900 can write in only one format, which is selected overtly by
5507c478bd9Sstevel@tonic-gate    *     setting Density Code in the block descriptor to 27h; in addition to
5517c478bd9Sstevel@tonic-gate    *     this native format, the 8900 can read tapes written in 8200, 8500 and
5527c478bd9Sstevel@tonic-gate    *     8500-compressed formats. We set the density to 27h at all times: we
5537c478bd9Sstevel@tonic-gate    *     _can_ do this because the format is changed automatically to match the
5547c478bd9Sstevel@tonic-gate    *     data on any previously-written tape; we _must_ do this to ensure that
5557c478bd9Sstevel@tonic-gate    *     never-before-written 8900 AME tapes are written in "8900 format" (all
5567c478bd9Sstevel@tonic-gate    *     writes to them in any other format will fail). By establishing
5577c478bd9Sstevel@tonic-gate    *     MT_DENSITY4 (corresponding to the "c" and "u" minor devices) as the
5587c478bd9Sstevel@tonic-gate    *     default, applications which open '/dev/rmt/x' write compressed data
5597c478bd9Sstevel@tonic-gate    *     automatically (but see Note [1]).
5607c478bd9Sstevel@tonic-gate    * [3] The 8900 has only one speed (if the driver ever cares).
5617c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver anachronisms.
5627c478bd9Sstevel@tonic-gate    */
5637c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
5647c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
5657c478bd9Sstevel@tonic-gate     "Mammoth EXB-8900 8mm Helical Scan",
5667c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
5677c478bd9Sstevel@tonic-gate     16,                       /* .length          Length of next item...      */
5687c478bd9Sstevel@tonic-gate     "EXABYTE EXB-8900",       /* .vid             Vendor-product ID string    */
5697c478bd9Sstevel@tonic-gate     ST_TYPE_EXB8500,          /* .type            Numeric type (cf. mtio.h)   */
5707c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
5717c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
5727c478bd9Sstevel@tonic-gate     ST_VARIABLE             | /*    00001           Supports variable length  */
5737c478bd9Sstevel@tonic-gate     ST_BSF                  | /*    00008           Supports SPACE block fwd  */
5747c478bd9Sstevel@tonic-gate     ST_BSR                  | /*    00010           Supports SPACE block rev  */
5757c478bd9Sstevel@tonic-gate     ST_LONG_ERASE           | /*    00020           Needs extra time to erase */
5767c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD            | /*    00200           Recognizes end-of-data    */
5777c478bd9Sstevel@tonic-gate     ST_UNLOADABLE           | /*    00400           Driver can be unloaded    */
5787c478bd9Sstevel@tonic-gate     ST_SOFT_ERROR_REPORTING | /*    00800           Reports errors on close   */
5797c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS        | /*    01000           More time for some ops    */
5807c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT     | /*    08000           Supports blocks > 64KB    */
5817c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           [Note 1]                  */
5827c478bd9Sstevel@tonic-gate                               /*    -----                                     */
5837c478bd9Sstevel@tonic-gate                               /*    19E39                                     */
5847c478bd9Sstevel@tonic-gate     5000,                     /* .max_rretries    [Note 4]                    */
5857c478bd9Sstevel@tonic-gate     5000,                     /* .max_wretries    [Note 4]                    */
5867c478bd9Sstevel@tonic-gate     {0x27, 0x27, 0x27, 0x27}, /* .densities       Density codes [Note 2]      */
5877c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
5887c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 3]        */
5897c478bd9Sstevel@tonic-gate   },
5907c478bd9Sstevel@tonic-gate 
5917c478bd9Sstevel@tonic-gate   /*
5927c478bd9Sstevel@tonic-gate    * Exabyte 8mm 5GB cartridge
5937c478bd9Sstevel@tonic-gate    *
5947c478bd9Sstevel@tonic-gate    *     NOTES
5957c478bd9Sstevel@tonic-gate    *     -----
5967c478bd9Sstevel@tonic-gate    *  o  ST_KNOWS_EOD here will cause medium error messages
5977c478bd9Sstevel@tonic-gate    *
5987c478bd9Sstevel@tonic-gate    *  o  The string length (16) has been reduced to 15 to allow for other
5997c478bd9Sstevel@tonic-gate    *     compatible models (eg the 8505 half-height)  (BugTraq #1091196)
6007c478bd9Sstevel@tonic-gate    *
6017c478bd9Sstevel@tonic-gate    * [1] The density code entry requires four values, even if there are less
6027c478bd9Sstevel@tonic-gate    *     than four values for the drive.
6037c478bd9Sstevel@tonic-gate    * [2] The Exabyte EXB-8500 has only one speed (if the driver ever cares).
6047c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
6057c478bd9Sstevel@tonic-gate    */
6067c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
6077c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
6087c478bd9Sstevel@tonic-gate     "Exabyte EXB-8500 8mm Helical Scan",
6097c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
6107c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
6117c478bd9Sstevel@tonic-gate     "EXABYTE EXB-850*",       /* .vid             Vendor-product ID string    */
6127c478bd9Sstevel@tonic-gate     ST_TYPE_EXB8500,          /* .type            Numeric type (cf. mtio.h)   */
6137c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
6147c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
6157c478bd9Sstevel@tonic-gate     ST_VARIABLE             | /*    00001           Supports variable length  */
6167c478bd9Sstevel@tonic-gate     ST_BSF                  | /*    00008           Supports SPACE block fwd  */
6177c478bd9Sstevel@tonic-gate     ST_BSR                  | /*    00010           Supports SPACE block rev  */
6187c478bd9Sstevel@tonic-gate     ST_LONG_ERASE           | /*    00020           Needs extra time to erase */
6197c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD            | /*    00200           Recognizes end-of-data    */
6207c478bd9Sstevel@tonic-gate     ST_UNLOADABLE           | /*    00400           Driver can be unloaded    */
6217c478bd9Sstevel@tonic-gate     ST_SOFT_ERROR_REPORTING | /*    00800           Reports errors on close   */
6227c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
6237c478bd9Sstevel@tonic-gate                               /*    -----                                     */
6247c478bd9Sstevel@tonic-gate                               /*    08E39                                     */
6257c478bd9Sstevel@tonic-gate     5000,                     /* .max_rretries    [Note 3]                    */
6267c478bd9Sstevel@tonic-gate     5000,                     /* .max_wretries    [Note 3]                    */
6277c478bd9Sstevel@tonic-gate     {0x14, 0x15, 0x8C, 0x8C}, /* .densities       Density codes [Note 1]      */
6287c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
6297c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
6307c478bd9Sstevel@tonic-gate   },
6317c478bd9Sstevel@tonic-gate 
6327c478bd9Sstevel@tonic-gate   /*
6337c478bd9Sstevel@tonic-gate    * Exabyte 8mm 2GB cartridge
6347c478bd9Sstevel@tonic-gate    *
6357c478bd9Sstevel@tonic-gate    *     NOTES
6367c478bd9Sstevel@tonic-gate    *     -----
6377c478bd9Sstevel@tonic-gate    * [1] The Exabyte EXB-8200 uses 0 or the "default" density code.
6387c478bd9Sstevel@tonic-gate    * [2] The Exabyte EXB-8200 has only one speed (if the driver ever cares).
6397c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
6407c478bd9Sstevel@tonic-gate    * [4] Do a request or log sense on close to report soft errors.
6417c478bd9Sstevel@tonic-gate    */
6427c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
6437c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
6447c478bd9Sstevel@tonic-gate     "Exabyte EXB-8200 8mm Helical Scan",
6457c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
6467c478bd9Sstevel@tonic-gate     16,                       /* .length          Length of next item...      */
6477c478bd9Sstevel@tonic-gate     "EXABYTE EXB-8200",       /* .vid             Vendor-product ID string    */
6487c478bd9Sstevel@tonic-gate     ST_TYPE_EXABYTE,          /* .type            Numeric type (cf. mtio.h)   */
6497c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
6507c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
6517c478bd9Sstevel@tonic-gate     ST_VARIABLE             | /*    00001           Supports variable length  */
6527c478bd9Sstevel@tonic-gate     ST_BSF                  | /*    00008           Supports SPACE block fwd  */
6537c478bd9Sstevel@tonic-gate     ST_BSR                  | /*    00010           Supports SPACE block rev  */
6547c478bd9Sstevel@tonic-gate     ST_LONG_ERASE           | /*    00020           Needs extra time to erase */
6557c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE     | /*    00040           Autodensity override flag */
6567c478bd9Sstevel@tonic-gate     ST_UNLOADABLE           | /*    00400           Driver can be unloaded    */
6577c478bd9Sstevel@tonic-gate     ST_SOFT_ERROR_REPORTING | /*    00800           Error reporting [Note 4]  */
6587c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
6597c478bd9Sstevel@tonic-gate                               /*    -----                                     */
6607c478bd9Sstevel@tonic-gate                               /*    08C79                                     */
6617c478bd9Sstevel@tonic-gate     5000,                     /* .max_rretries    [Note 3]                    */
6627c478bd9Sstevel@tonic-gate     5000,                     /* .max_wretries    [Note 3]                    */
6637c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
6647c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
6657c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
6667c478bd9Sstevel@tonic-gate   },
6677c478bd9Sstevel@tonic-gate 
6687c478bd9Sstevel@tonic-gate   /*
6697c478bd9Sstevel@tonic-gate    * Exabyte DC-2000 cartridge
6707c478bd9Sstevel@tonic-gate    *
6717c478bd9Sstevel@tonic-gate    *     NOTES
6727c478bd9Sstevel@tonic-gate    *     -----
6737c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
6747c478bd9Sstevel@tonic-gate    *
6757c478bd9Sstevel@tonic-gate    *  o This entry uses a shortened Vendor-product ID string for the
676*55fea89dSDan Cross    *    INQUIRY match.
6777c478bd9Sstevel@tonic-gate    *
6787c478bd9Sstevel@tonic-gate    * [1] The Exabyte DC-2000 uses 0 or the "default" density.
6797c478bd9Sstevel@tonic-gate    * [2] The Exabyte DC-2000 has only one speed (if the driver ever cares).
6807c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
6817c478bd9Sstevel@tonic-gate    */
6827c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
6837c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
6847c478bd9Sstevel@tonic-gate     "Exabyte EXB-2501 QIC",   /* .name            Display ("pretty") name     */
6857c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
6867c478bd9Sstevel@tonic-gate     "EXABYTE EXB-25**",       /* .vid             Vendor-product ID string    */
6877c478bd9Sstevel@tonic-gate     ST_TYPE_EXABYTE,          /* .type            Numeric type (cf. mtio.h)   */
6887c478bd9Sstevel@tonic-gate     1024,                     /* .bsize           Block size (0 = variable)   */
6897c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
6907c478bd9Sstevel@tonic-gate     ST_QIC              |     /*    00002           QIC tape device           */
6917c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040           Autodensity override flag */
6927c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
6937c478bd9Sstevel@tonic-gate                               /*    -----                                     */
6947c478bd9Sstevel@tonic-gate                               /*    00442                                     */
6957c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
6967c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
6977c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
6987c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
6997c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
7007c478bd9Sstevel@tonic-gate   },
7017c478bd9Sstevel@tonic-gate 
7027c478bd9Sstevel@tonic-gate   /*
7037c478bd9Sstevel@tonic-gate    * EXABYTE 4mm Helical Scan
7047c478bd9Sstevel@tonic-gate    *
7057c478bd9Sstevel@tonic-gate    *     NOTES
7067c478bd9Sstevel@tonic-gate    *     -----
7077c478bd9Sstevel@tonic-gate    *
7087c478bd9Sstevel@tonic-gate    *  o This entry uses a shortened Vendor-product ID string for the
709*55fea89dSDan Cross    *    INQUIRY match.
7107c478bd9Sstevel@tonic-gate    *
7117c478bd9Sstevel@tonic-gate    * [1] The EXABYTE 4mm uses 0 or the "default" density code.
7127c478bd9Sstevel@tonic-gate    * [2] The EXABYTE 4mm has only one speed (if the driver ever cares).
7137c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
7147c478bd9Sstevel@tonic-gate    */
7157c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
7167c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
7177c478bd9Sstevel@tonic-gate     "Exabyte 4mm Helical Scan",
7187c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
7197c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
7207c478bd9Sstevel@tonic-gate     "EXABYTE EXB-420*",       /* .vid             Vendor-product ID string    */
7217c478bd9Sstevel@tonic-gate     ST_TYPE_EXABYTE,          /* .type            Numeric type (cf. mtio.h)   */
7227c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
7237c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
7247c478bd9Sstevel@tonic-gate     ST_VARIABLE   |           /*    00001           Supports variable length  */
7257c478bd9Sstevel@tonic-gate     ST_BSF        |           /*    00008           Supports SPACE block fwd  */
7267c478bd9Sstevel@tonic-gate     ST_BSR        |           /*    00010           Supports SPACE block rev  */
7277c478bd9Sstevel@tonic-gate     ST_LONG_ERASE |           /*    00020           Needs extra time to erase */
7287c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
7297c478bd9Sstevel@tonic-gate                               /*    -----                                     */
7307c478bd9Sstevel@tonic-gate                               /*    00439                                     */
7317c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
7327c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
7337c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
7347c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
7357c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
7367c478bd9Sstevel@tonic-gate   },
7377c478bd9Sstevel@tonic-gate 
7387c478bd9Sstevel@tonic-gate   /*
7397c478bd9Sstevel@tonic-gate    * Fujitsu 1/2" cartridge
7407c478bd9Sstevel@tonic-gate    *
7417c478bd9Sstevel@tonic-gate    *     NOTES
7427c478bd9Sstevel@tonic-gate    *     -----
7437c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
7447c478bd9Sstevel@tonic-gate    *
7457c478bd9Sstevel@tonic-gate    * [1] The Fujitsu 1/2" drive uses 0 or the "default" density code.
7467c478bd9Sstevel@tonic-gate    * [2] The Fujitsu 1/2" drive has only one speed (if the driver ever cares).
7477c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
7487c478bd9Sstevel@tonic-gate    */
7497c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
7507c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
7517c478bd9Sstevel@tonic-gate     "Fujitsu 1/2\" Cartridge",/* .name            Display ("pretty") name     */
7527c478bd9Sstevel@tonic-gate     2,                        /* .length          Length of next item...      */
7537c478bd9Sstevel@tonic-gate     "\076\000",               /* .vid             Vendor-product ID string    */
7547c478bd9Sstevel@tonic-gate     ST_TYPE_FUJI,             /* .type            Numeric type (cf. mtio.h)   */
7557c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
7567c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
7577c478bd9Sstevel@tonic-gate     ST_VARIABLE   |           /*    00001           Supports variable length  */
7587c478bd9Sstevel@tonic-gate     ST_QIC        |           /*    00002           QIC tape device           */
7597c478bd9Sstevel@tonic-gate     ST_BSF        |           /*    00008           Supports SPACE block fwd  */
7607c478bd9Sstevel@tonic-gate     ST_BSR        |           /*    00010           Supports SPACE block rev  */
7617c478bd9Sstevel@tonic-gate     ST_LONG_ERASE |           /*    00020           Needs extra time to erase */
7627c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD  |           /*    00200           Recognizes end-of-data    */
7637c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
7647c478bd9Sstevel@tonic-gate                               /*    -----                                     */
7657c478bd9Sstevel@tonic-gate                               /*    0063B                                     */
7667c478bd9Sstevel@tonic-gate     300,                      /* .max_rretries    [Note 3]                    */
7677c478bd9Sstevel@tonic-gate     300,                      /* .max_wretries    [Note 3]                    */
7687c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
7697c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
7707c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
7717c478bd9Sstevel@tonic-gate   },
7727c478bd9Sstevel@tonic-gate 
7737c478bd9Sstevel@tonic-gate   /*
7747c478bd9Sstevel@tonic-gate    * HP 1/2" reel
7757c478bd9Sstevel@tonic-gate    *
7767c478bd9Sstevel@tonic-gate    *     NOTES
7777c478bd9Sstevel@tonic-gate    *     -----
7787c478bd9Sstevel@tonic-gate    * [1] The HP 1/2" reel uses the vendor unique density '0xC3':
7797c478bd9Sstevel@tonic-gate    *     this is compressed 6250 mode. Beware that using large
7807c478bd9Sstevel@tonic-gate    *     data sets consisting of repeated data compresses *too*
7817c478bd9Sstevel@tonic-gate    *     well and one can run into the unix 2 gb file offset limit
7827c478bd9Sstevel@tonic-gate    *     this way.
7837c478bd9Sstevel@tonic-gate    * [2] The HP 1/2" reel has only one speed (if the driver ever cares).
7847c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
7857c478bd9Sstevel@tonic-gate    */
7867c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
7877c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
7887c478bd9Sstevel@tonic-gate     "HP-88780 1/2\" Reel",    /* .name            Display ("pretty") name     */
7897c478bd9Sstevel@tonic-gate     13,                       /* .length          Length of next item...      */
7907c478bd9Sstevel@tonic-gate     "HP      88780",          /* .vid             Vendor-product ID string    */
7917c478bd9Sstevel@tonic-gate     ST_TYPE_HP,               /* .type            Numeric type (cf. mtio.h)   */
7927c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
7937c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
7947c478bd9Sstevel@tonic-gate     ST_VARIABLE  |            /*    00001           Supports variable length  */
7957c478bd9Sstevel@tonic-gate     ST_REEL      |            /*    00004           1/2-inch reel tape device */
7967c478bd9Sstevel@tonic-gate     ST_BSF       |            /*    00008           Supports SPACE block fwd  */
7977c478bd9Sstevel@tonic-gate     ST_BSR       |            /*    00010           Supports SPACE block rev  */
7987c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
7997c478bd9Sstevel@tonic-gate                               /*    -----                                     */
8007c478bd9Sstevel@tonic-gate                               /*    0041D                                     */
8017c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
8027c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
8037c478bd9Sstevel@tonic-gate     {0x01, 0x02, 0x03, 0xC3}, /* .densities       Density codes [Note 1]      */
8047c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
8057c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
8067c478bd9Sstevel@tonic-gate   },
8077c478bd9Sstevel@tonic-gate 
8087c478bd9Sstevel@tonic-gate   /*
8097c478bd9Sstevel@tonic-gate    * HP 35470A 4mm DAT
8107c478bd9Sstevel@tonic-gate    *
8117c478bd9Sstevel@tonic-gate    *     NOTES
8127c478bd9Sstevel@tonic-gate    *     -----
8137c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
8147c478bd9Sstevel@tonic-gate    *
8157c478bd9Sstevel@tonic-gate    * [1] The HP 35470A uses 0 or the "default" density code.
8167c478bd9Sstevel@tonic-gate    * [2] The HP 35470A has only one speed (if the driver ever cares).
8177c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
8187c478bd9Sstevel@tonic-gate    */
8197c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
8207c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
8217c478bd9Sstevel@tonic-gate     "HP 35470A 4mm DAT",      /* .name            Display ("pretty") name     */
8227c478bd9Sstevel@tonic-gate     16,                       /* .length          Length of next item...      */
8237c478bd9Sstevel@tonic-gate     "HP      HP35470A",       /* .vid             Vendor-product ID string    */
8247c478bd9Sstevel@tonic-gate     ST_TYPE_DAT,              /* .type            Numeric type (cf. mtio.h)   */
8257c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
8267c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
8277c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
8287c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
8297c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
8307c478bd9Sstevel@tonic-gate     ST_LONG_ERASE       |     /*    00020           Needs extra time to erase */
8317c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040           Autodensity override flag */
8327c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
8337c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
8347c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS,         /*    01000           More time for some ops    */
8357c478bd9Sstevel@tonic-gate                               /*    -----                                     */
8367c478bd9Sstevel@tonic-gate                               /*    01679                                     */
8377c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
8387c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
8397c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
8407c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
8417c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
8427c478bd9Sstevel@tonic-gate   },
8437c478bd9Sstevel@tonic-gate 
8447c478bd9Sstevel@tonic-gate   /*
8457c478bd9Sstevel@tonic-gate    * HP 35480A 4mm DAT
8467c478bd9Sstevel@tonic-gate    *
8477c478bd9Sstevel@tonic-gate    *     NOTES
8487c478bd9Sstevel@tonic-gate    *     -----
8497c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
8507c478bd9Sstevel@tonic-gate    *
8517c478bd9Sstevel@tonic-gate    * [1] The HP 35480A uses 0 or the "default" density code.
8527c478bd9Sstevel@tonic-gate    * [2] The HP 35480A has only one speed (if the driver ever cares).
8537c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
8547c478bd9Sstevel@tonic-gate    */
8557c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
8567c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
8577c478bd9Sstevel@tonic-gate     "HP 35480A 4mm DAT",      /* .name            Display ("pretty") name     */
8587c478bd9Sstevel@tonic-gate     16,                       /* .length          Length of next item...      */
8597c478bd9Sstevel@tonic-gate     "HP      HP35480A",       /* .vid             Vendor-product ID string    */
8607c478bd9Sstevel@tonic-gate     ST_TYPE_DAT,              /* .type            Numeric type (cf. mtio.h)   */
8617c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
8627c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
8637c478bd9Sstevel@tonic-gate     ST_VARIABLE   |           /*    00001           Supports variable length  */
8647c478bd9Sstevel@tonic-gate     ST_BSF        |           /*    00008           Supports SPACE block fwd  */
8657c478bd9Sstevel@tonic-gate     ST_BSR        |           /*    00010           Supports SPACE block rev  */
8667c478bd9Sstevel@tonic-gate     ST_LONG_ERASE |           /*    00020           Needs extra time to erase */
8677c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
8687c478bd9Sstevel@tonic-gate                               /*    -----                                     */
8697c478bd9Sstevel@tonic-gate                               /*    00439                                     */
8707c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 1]                    */
8717c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 1]                    */
8727c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 2]      */
8737c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
8747c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 3]        */
8757c478bd9Sstevel@tonic-gate   },
8767c478bd9Sstevel@tonic-gate 
8777c478bd9Sstevel@tonic-gate   /*
8787c478bd9Sstevel@tonic-gate    * HP JetStore 6000 C1533
8797c478bd9Sstevel@tonic-gate    *
8807c478bd9Sstevel@tonic-gate    *     NOTES
8817c478bd9Sstevel@tonic-gate    *     -----
8827c478bd9Sstevel@tonic-gate    *  o This is only supported for x86.
8837c478bd9Sstevel@tonic-gate    *
8847c478bd9Sstevel@tonic-gate    * [1] The HP JetStore 6000 uses 0 or the "default" density code.
8857c478bd9Sstevel@tonic-gate    * [2] The HP JetStore 6000 has only one speed (if the driver ever cares).
8867c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
8877c478bd9Sstevel@tonic-gate    */
8887c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
8897c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
8907c478bd9Sstevel@tonic-gate     "HP JetStore 6000 C1533", /* .name            Display ("pretty") name     */
8917c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
8927c478bd9Sstevel@tonic-gate     "HP      C1533A",         /* .vid             Vendor-product ID string    */
8937c478bd9Sstevel@tonic-gate     ST_TYPE_DAT,              /* .type            Numeric type (cf. mtio.h)   */
8947c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
8957c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
8967c478bd9Sstevel@tonic-gate     ST_VARIABLE   |           /*    00001           Supports variable length  */
8977c478bd9Sstevel@tonic-gate     ST_BSF        |           /*    00008           Supports SPACE block fwd  */
8987c478bd9Sstevel@tonic-gate     ST_BSR        |           /*    00010           Supports SPACE block rev  */
8997c478bd9Sstevel@tonic-gate     ST_LONG_ERASE |           /*    00020           Needs extra time to erase */
9007c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
9017c478bd9Sstevel@tonic-gate                               /*    -----                                     */
9027c478bd9Sstevel@tonic-gate                               /*    00639                                     */
9037c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
9047c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
9057c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
9067c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
9077c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
9087c478bd9Sstevel@tonic-gate   },
9097c478bd9Sstevel@tonic-gate 
9107c478bd9Sstevel@tonic-gate   /*
9117c478bd9Sstevel@tonic-gate    * HP DDS-3 4mm DAT
9127c478bd9Sstevel@tonic-gate    *
9137c478bd9Sstevel@tonic-gate    *     NOTES
9147c478bd9Sstevel@tonic-gate    *     -----
9157c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
9167c478bd9Sstevel@tonic-gate    *
9177c478bd9Sstevel@tonic-gate    * [1] Compression on the HP DDS-3 is controlled
9187c478bd9Sstevel@tonic-gate    *     via the Device Configuration mode page.
9197c478bd9Sstevel@tonic-gate    * [2] The HP DDS-3 has only one density, 0x8c (or 0 for "default").
9207c478bd9Sstevel@tonic-gate    * [3] The HP DDS-3 has only one speed (if the driver ever cares).
9217c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver anachronisms.
9227c478bd9Sstevel@tonic-gate    */
9237c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
9247c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
9257c478bd9Sstevel@tonic-gate     "HP DDS-3 4MM DAT",       /* .name            Display ("pretty") name     */
9267c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
9277c478bd9Sstevel@tonic-gate     "HP      C1537A",         /* .vid             Vendor-product ID string    */
9287c478bd9Sstevel@tonic-gate     MT_ISDAT,                 /* .type            Numeric type (cf. mtio.h)   */
9297c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
9307c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
9317c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
9327c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
9337c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
9347c478bd9Sstevel@tonic-gate     ST_LONG_ERASE      |      /*    00020           Needs extra time to erase */
9357c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
9367c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
9377c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
9387c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
9397c478bd9Sstevel@tonic-gate                               /*    -----                                     */
9407c478bd9Sstevel@tonic-gate                               /*    09639                                     */
9417c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 4]                    */
9427c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 4]                    */
9437c478bd9Sstevel@tonic-gate     {0x00, 0x8C, 0x8C, 0x8C}, /* .densities       Density codes [Note 2]      */
9447c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
9457c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 3]        */
9467c478bd9Sstevel@tonic-gate   },
9477c478bd9Sstevel@tonic-gate 
9487c478bd9Sstevel@tonic-gate   /*
9497c478bd9Sstevel@tonic-gate    * HP DDS-3 4mm DAT loader
9507c478bd9Sstevel@tonic-gate    *
9517c478bd9Sstevel@tonic-gate    *     NOTES
9527c478bd9Sstevel@tonic-gate    *     -----
9537c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
9547c478bd9Sstevel@tonic-gate    *
9557c478bd9Sstevel@tonic-gate    * [1] Compression on the DDS-3 Loader is controlled
9567c478bd9Sstevel@tonic-gate    *     via the Device Configuration mode page.
9577c478bd9Sstevel@tonic-gate    * [2] The DDS-3 Loader has only one density, 0x8c (or 0 for "default").
9587c478bd9Sstevel@tonic-gate    * [3] The DDS-3 Loader has only one speed (if the driver ever cares).
9597c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver anachronisms.
9607c478bd9Sstevel@tonic-gate    */
9617c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
9627c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
9637c478bd9Sstevel@tonic-gate     "HP DDS-3 4MM DAT loader",/* .name            Display ("pretty") name     */
9647c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
9657c478bd9Sstevel@tonic-gate     "HP      C1557A",         /* .vid             Vendor-product ID string    */
9667c478bd9Sstevel@tonic-gate     MT_ISDAT,                 /* .type            Numeric type (cf. mtio.h)   */
9677c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
9687c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
9697c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
9707c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
9717c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
9727c478bd9Sstevel@tonic-gate     ST_LONG_ERASE      |      /*    00020           Needs extra time to erase */
9737c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
9747c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
9757c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
9767c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
9777c478bd9Sstevel@tonic-gate                               /*    -----                                     */
9787c478bd9Sstevel@tonic-gate                               /*    09639                                     */
9797c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 4]                    */
9807c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 4]                    */
9817c478bd9Sstevel@tonic-gate     {0x00, 0x8C, 0x8C, 0x8C}, /* .densities       Density codes [Note 2]      */
9827c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
9837c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 3]        */
9847c478bd9Sstevel@tonic-gate   },
9857c478bd9Sstevel@tonic-gate 
9867c478bd9Sstevel@tonic-gate   /*
9877c478bd9Sstevel@tonic-gate    * HP C5683A DDS-4 DAT drives with Sun-specific behavior
9887c478bd9Sstevel@tonic-gate    *
9897c478bd9Sstevel@tonic-gate    * When the configuration switches on the drive are set appropriately, the
9907c478bd9Sstevel@tonic-gate    * HP C5683A: interprets a density code of 8Ch to mean "enable compression",
9917c478bd9Sstevel@tonic-gate    * 00h to mean "disable compression"; senses the tape type automatically;
9927c478bd9Sstevel@tonic-gate    * adjusts to match the tape type. (That is, compression is controlled via
9937c478bd9Sstevel@tonic-gate    * the Sun-unique 8Ch density code, rather than using the Data Compression
9947c478bd9Sstevel@tonic-gate    * mode page).
9957c478bd9Sstevel@tonic-gate    *
9967c478bd9Sstevel@tonic-gate    *     NOTES
9977c478bd9Sstevel@tonic-gate    *     -----
9987c478bd9Sstevel@tonic-gate    * [1] 00h = compression disabled, 8Ch = compression enabled, and all DDS-x
9997c478bd9Sstevel@tonic-gate    *     format-related adjustments are performed automatically by the drive.
10007c478bd9Sstevel@tonic-gate    * [2] The 5683 has only one speed (if the driver ever cares).
10017c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
10027c478bd9Sstevel@tonic-gate    */
10037c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
10047c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
10057c478bd9Sstevel@tonic-gate     "HP DDS-4 DAT (Sun)",     /* .name            Display ("pretty") name     */
10067c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
10077c478bd9Sstevel@tonic-gate     "HP      C5683A",         /* .vid             Vendor-product ID string    */
10087c478bd9Sstevel@tonic-gate     MT_ISDAT,                 /* .type            Numeric type (cf. mtio.h)   */
10097c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
10107c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
10117c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
10127c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
10137c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
10147c478bd9Sstevel@tonic-gate     ST_LONG_ERASE       |     /*    00020           Needs extra time to erase */
10157c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
10167c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
10177c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS    |     /*    01000           More time for some ops    */
10187c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
10197c478bd9Sstevel@tonic-gate                               /*    -----                                     */
10207c478bd9Sstevel@tonic-gate                               /*    09639                                     */
10217c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
10227c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
10237c478bd9Sstevel@tonic-gate     {0x00, 0x8C, 0x8C, 0x8C}, /* .densities       Density codes [Note 1]      */
10247c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
10257c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
10267c478bd9Sstevel@tonic-gate   },
10277c478bd9Sstevel@tonic-gate 
10287c478bd9Sstevel@tonic-gate   /*
10297c478bd9Sstevel@tonic-gate    * HP C5713A DDS-4 DAT autochangers with Sun-specific behavior
10307c478bd9Sstevel@tonic-gate    *
10317c478bd9Sstevel@tonic-gate    * When the configuration switches on the drive are set appropriately, the
10327c478bd9Sstevel@tonic-gate    * HP C5713A: interprets a density code of 8Ch to mean "enable compression",
10337c478bd9Sstevel@tonic-gate    * 00h to mean "disable compression"; senses the tape type automatically;
10347c478bd9Sstevel@tonic-gate    * adjusts to match the tape type. (That is, compression is controlled via
10357c478bd9Sstevel@tonic-gate    * the Sun-unique 8Ch density code, rather than using the Data Compression
10367c478bd9Sstevel@tonic-gate    * mode page).
10377c478bd9Sstevel@tonic-gate    *
10387c478bd9Sstevel@tonic-gate    *     NOTES
10397c478bd9Sstevel@tonic-gate    *     -----
10407c478bd9Sstevel@tonic-gate    * [1] 00h = compression disabled, 8Ch = compression enabled, and all DDS-x
10417c478bd9Sstevel@tonic-gate    *     format-related adjustments are performed automatically by the drive.
10427c478bd9Sstevel@tonic-gate    * [2] The 5713 has only one speed (if the driver ever cares).
10437c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
10447c478bd9Sstevel@tonic-gate    */
10457c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
10467c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
10477c478bd9Sstevel@tonic-gate     "HP DDS-4 DAT (Sun)",     /* .name            Display ("pretty") name     */
10487c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
10497c478bd9Sstevel@tonic-gate     "HP      C5713A",         /* .vid             Vendor-product ID string    */
10507c478bd9Sstevel@tonic-gate     MT_ISDAT,                 /* .type            Numeric type (cf. mtio.h)   */
10517c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
10527c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
10537c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
10547c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
10557c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
10567c478bd9Sstevel@tonic-gate     ST_LONG_ERASE       |     /*    00020           Needs extra time to erase */
10577c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
10587c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
10597c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS    |     /*    01000           More time for some ops    */
10607c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
10617c478bd9Sstevel@tonic-gate                               /*    -----                                     */
10627c478bd9Sstevel@tonic-gate                               /*    09639                                     */
10637c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
10647c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
10657c478bd9Sstevel@tonic-gate     {0x00, 0x8C, 0x8C, 0x8C}, /* .densities       Density codes [Note 1]      */
10667c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
10677c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
10687c478bd9Sstevel@tonic-gate   },
10697c478bd9Sstevel@tonic-gate 
10707c478bd9Sstevel@tonic-gate    /*
10717c478bd9Sstevel@tonic-gate     * HP C7438A
10727c478bd9Sstevel@tonic-gate     */
10737c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
10747c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
10757c478bd9Sstevel@tonic-gate     "HP DAT-72",              /* .name            Display ("pretty") name     */
10767c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
10777c478bd9Sstevel@tonic-gate     "HP      C7438A",         /* .vid             Vendor-product ID string    */
10787c478bd9Sstevel@tonic-gate     MT_ISDAT,                 /* .type            Numeric type (cf. mtio.h)   */
10797c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
10807c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
10817c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
10827c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
10837c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
10847c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
10857c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
10867c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
10877c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           Mode select compression   */
10887c478bd9Sstevel@tonic-gate                               /*    -----                                     */
10897c478bd9Sstevel@tonic-gate                               /*    18619                                     */
10907c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries      Not Used                  */
10917c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries      Not Used                  */
10927c478bd9Sstevel@tonic-gate     {0x47, 0x47, 0x47, 0x47}, /* .densities       Density codes               */
10937c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
10947c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes Not Used        */
10957c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing Special          */
10967c478bd9Sstevel@tonic-gate     MINUTES(7),               /* .io_timeout         7 minutes (recover read) */
10977c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
10987c478bd9Sstevel@tonic-gate     MINUTES(600),             /* .space_timeout      10 Hours (space seq file)*/
10997c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
11007c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
11017c478bd9Sstevel@tonic-gate     MINUTES(290)              /* .erase_timeout      4 hours 50 minutes       */
11027c478bd9Sstevel@tonic-gate   },
11037c478bd9Sstevel@tonic-gate 
110420a43cafSlh   /*
110520a43cafSlh    * HP DAT-160
110620a43cafSlh    */
110720a43cafSlh   {                           /* Structure member Description                 */
110820a43cafSlh                               /* ---------------- -----------                 */
110920a43cafSlh     "HP DDS-6 DAT",           /* .name            Display ("pretty") name     */
111020a43cafSlh     14,                       /* .length          Length of next item...      */
111120a43cafSlh     "HP      DAT160",         /* .vid             Vendor-product ID string    */
111220a43cafSlh     MT_ISDAT,                 /* .type            Numeric type (cf. mtio.h)   */
111320a43cafSlh     0,                        /* .bsize           Block size (0 = variable)   */
111420a43cafSlh                               /* .options         Drive option flags:         */
111520a43cafSlh     ST_VARIABLE         |     /*    00001           Supports variable length  */
111620a43cafSlh     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
111720a43cafSlh     ST_BSR              |     /*    00010           Supports SPACE block rev  */
111820a43cafSlh     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
111920a43cafSlh     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
112020a43cafSlh     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
112120a43cafSlh     ST_MODE_SEL_COMP    |     /*    10000           Mode select compression   */
112220a43cafSlh     ST_WORMABLE,              /*  1000000           Drive is WORM capable     */
112320a43cafSlh                               /*  -------                                     */
112420a43cafSlh                               /*  1018619                                     */
112520a43cafSlh     -1,                       /* .max_rretries      Not Used                  */
112620a43cafSlh     -1,                       /* .max_wretries      Not Used                  */
112720a43cafSlh     {0x48, 0x48, 0x48, 0x48}, /* .densities       Density codes               */
112820a43cafSlh     MT_DENSITY4,              /* .default_density (.densities[x])             */
112920a43cafSlh     {0, 0, 0, 0},             /* .speeds          Speed codes Not Used        */
113020a43cafSlh     0,                        /* .non_motion_timeout Nothing Special          */
113120a43cafSlh     MINUTES(5),               /* .io_timeout                                  */
113220a43cafSlh     MINUTES(10),              /* .rewind_timeout                              */
113320a43cafSlh     MINUTES(20),              /* .space_timeout                               */
113420a43cafSlh     MINUTES(10),              /* .load_timeout                                */
113520a43cafSlh     MINUTES(10),              /* .unload_timeout                              */
113620a43cafSlh     MINUTES(300)              /* .erase_timeout      5 hours                  */
113720a43cafSlh   },
113820a43cafSlh 
113903d345baSyl   /*
114003d345baSyl    * HP Ultrium LTO Gen 4
114103d345baSyl    * [1] This drive supports two densites at this time.
114203d345baSyl    *     In reality the type of media GEN 3 or GEN 4 selects the density.
114303d345baSyl    *     ST_MODE_SEL_COMP controls compression.
114403d345baSyl    * [2] The Ultrium LTO has one speed.
114503d345baSyl    * [3] max_rretries and max_wretries are not used but kept for
114603d345baSyl    *     backward compatibility.
114703d345baSyl    */
114803d345baSyl   {                           /* Structure member Description                 */
114903d345baSyl                               /* ---------------- -----------                 */
115003d345baSyl     "HP Ultrium LTO 4",       /* .name            Display ("pretty") name     */
115103d345baSyl     17,                       /* .length          Length of next item...      */
115203d345baSyl     "HP      Ultrium 4*",     /* .vid             handles SCSI or FC          */
115303d345baSyl     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
115403d345baSyl     0,                        /* .bsize           Block size (0 = variable)   */
115503d345baSyl                               /* .options         Drive option flags:         */
115603d345baSyl     ST_VARIABLE         |     /*  0000001           Supports variable length  */
115703d345baSyl     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
115803d345baSyl     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
115903d345baSyl     ST_KNOWS_EOD        |     /*  0000200           Recognizes end-of-data    */
116003d345baSyl     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
116103d345baSyl     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
116203d345baSyl     ST_MODE_SEL_COMP    |     /*  0010000           Mode select compression   */
116303d345baSyl     ST_WORMABLE,              /*  1000000           Drive is WORM capable     */
116403d345baSyl                               /*  -------                                     */
116503d345baSyl                               /*  1018619                                     */
116603d345baSyl     -1,                       /* .max_rretries    [Note 3]                    */
116703d345baSyl     -1,                       /* .max_wretries    [Note 3]                    */
116803d345baSyl     {0x44, 0x44, 0x46, 0x46}, /* .densities       Density codes [Note 1]      */
116903d345baSyl     MT_DENSITY4,              /* .default_density (.densities[x])             */
117003d345baSyl     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
117103d345baSyl     MINUTES(1),               /* .non_motion_timeout                          */
117203d345baSyl     MINUTES(20),              /* .io_timeout                                  */
117303d345baSyl     MINUTES(10),              /* .rewind_timeout                              */
117403d345baSyl     MINUTES(20),              /* .space_timeout                               */
117503d345baSyl     MINUTES(10),              /* .load_timeout                                */
117603d345baSyl     MINUTES(10),              /* .unload_timeout                              */
117703d345baSyl     MINUTES(300)              /* .erase_timeout      Five Hours               */
117803d345baSyl   },
117903d345baSyl 
11807c478bd9Sstevel@tonic-gate   /*
11817c478bd9Sstevel@tonic-gate    * HP Ultrium LTO Gen 3
11827c478bd9Sstevel@tonic-gate    * [1] This drive supports two densites at this time.
11837c478bd9Sstevel@tonic-gate    *     In reality the type of media GEN 2 or GEN 3 selects the density.
11847c478bd9Sstevel@tonic-gate    *     ST_MODE_SEL_COMP controls compression.
11857c478bd9Sstevel@tonic-gate    * [2] The Ultrium LTO has one speed.
11867c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are not used but kept for
11877c478bd9Sstevel@tonic-gate    *     backward compatibility.
11887c478bd9Sstevel@tonic-gate    */
11897c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
11907c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
11917c478bd9Sstevel@tonic-gate     "HP Ultrium LTO 3",       /* .name            Display ("pretty") name     */
11927c478bd9Sstevel@tonic-gate     17,                       /* .length          Length of next item...      */
11937c478bd9Sstevel@tonic-gate     "HP      Ultrium 3*",     /* .vid             handles SCSI or FC          */
11947c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
11957c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
11967c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
11975988135dSrralphs     ST_VARIABLE         |     /*  0000001           Supports variable length  */
11985988135dSrralphs     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
11995988135dSrralphs     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
12005988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200           Recognizes end-of-data    */
12015988135dSrralphs     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
1202*55fea89dSDan Cross     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
12035988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000           Mode select compression   */
12045988135dSrralphs     ST_WORMABLE,              /*  1000000           Drive is WORM capable     */
12055988135dSrralphs                               /*  -------                                     */
12065988135dSrralphs                               /*  1018619                                     */
12077c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
12087c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
12097c478bd9Sstevel@tonic-gate     {0x42, 0x42, 0x44, 0x44}, /* .densities       Density codes [Note 1]      */
12107c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
12117c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
12127c478bd9Sstevel@tonic-gate     MINUTES(1),               /* .non_motion_timeout                          */
12137c478bd9Sstevel@tonic-gate     MINUTES(20),              /* .io_timeout                                  */
12147c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .rewind_timeout                              */
12157c478bd9Sstevel@tonic-gate     MINUTES(20),              /* .space_timeout                               */
12167c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .load_timeout                                */
12177c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .unload_timeout                              */
12187c478bd9Sstevel@tonic-gate     MINUTES(300)              /* .erase_timeout      Five Hours               */
12197c478bd9Sstevel@tonic-gate   },
12207c478bd9Sstevel@tonic-gate 
12217c478bd9Sstevel@tonic-gate   /*
12227c478bd9Sstevel@tonic-gate    * HP Ultrium LTO Gen 2
12237c478bd9Sstevel@tonic-gate    * [1] This drive supports two densites at this time.
12247c478bd9Sstevel@tonic-gate    *     In reality the type of media GEN 1 or GEN 2 selects the density.
12257c478bd9Sstevel@tonic-gate    *     ST_MODE_SEL_COMP controls compression.
12267c478bd9Sstevel@tonic-gate    * [2] The Ultrium LTO has one speed.
12277c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are not used but kept for
12287c478bd9Sstevel@tonic-gate    *     backward compatibility.
12297c478bd9Sstevel@tonic-gate    */
12307c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
12317c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
12327c478bd9Sstevel@tonic-gate     "HP Ultrium LTO 2",       /* .name            Display ("pretty") name     */
12337c478bd9Sstevel@tonic-gate     17,                       /* .length          Length of next item...      */
12347c478bd9Sstevel@tonic-gate     "HP      Ultrium 2*",     /* .vid             handles SCSI or FC          */
12357c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
12367c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
12377c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
12387c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
12397c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
12407c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
12417c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
12427c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
1243*55fea89dSDan Cross     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
12447c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           Mode select compression   */
12457c478bd9Sstevel@tonic-gate                               /*    -----                                     */
12467c478bd9Sstevel@tonic-gate                               /*    18619                                     */
12477c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
12487c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
12497c478bd9Sstevel@tonic-gate     {0x40, 0x40, 0x42, 0x42}, /* .densities       Density codes [Note 1]      */
12507c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
12517c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
12520a4dbdc5Sbo zhou - Sun Microsystems - Beijing China     MINUTES(10),              /* .non_motion_timeout                          */
12537c478bd9Sstevel@tonic-gate     MINUTES(5),               /* .io_timeout Four                             */
12547c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .rewind_timeout                              */
12557c478bd9Sstevel@tonic-gate     MINUTES(20),              /* .space_timeout                               */
12567c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .load_timeout                                */
12577c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .unload_timeout                              */
12587c478bd9Sstevel@tonic-gate     MINUTES(300)              /* .erase_timeout      Five Hours               */
12597c478bd9Sstevel@tonic-gate   },
12607c478bd9Sstevel@tonic-gate 
12617c478bd9Sstevel@tonic-gate   /*
12627c478bd9Sstevel@tonic-gate    * HP Ultrium LTO
12637c478bd9Sstevel@tonic-gate    * [1] This drive supports only one density at this time.
12647c478bd9Sstevel@tonic-gate          ST_MODE_SEL_COMP controls compression.
12657c478bd9Sstevel@tonic-gate    * [2] The Ultrium LTO has one speed.
12667c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are not used but kept for
12677c478bd9Sstevel@tonic-gate    *     backward compatibility.
12687c478bd9Sstevel@tonic-gate    */
12697c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
12707c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
12717c478bd9Sstevel@tonic-gate     "HP Ultrium LTO",         /* .name            Display ("pretty") name     */
12727c478bd9Sstevel@tonic-gate     17,                       /* .length          Length of next item...      */
12737c478bd9Sstevel@tonic-gate     "HP      Ultrium 1*",     /* .vid             handles SCSI and FC         */
12747c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
12757c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
12767c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
12777c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
12787c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
12797c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
12807c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
12817c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
1282*55fea89dSDan Cross     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
12837c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           Mode select compression   */
12847c478bd9Sstevel@tonic-gate                               /*    -----                                     */
12857c478bd9Sstevel@tonic-gate                               /*    18619                                     */
12867c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
12877c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
12887c478bd9Sstevel@tonic-gate     {0x40, 0x40, 0x40, 0x40}, /* .densities       Density codes [Note 1]      */
12897c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
12907c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
12917c478bd9Sstevel@tonic-gate     MINUTES(1),               /* .non_motion_timeout                          */
12927c478bd9Sstevel@tonic-gate     MINUTES(5),               /* .io_timeout Four                             */
12937c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .rewind_timeout                              */
12947c478bd9Sstevel@tonic-gate     MINUTES(20),              /* .space_timeout                               */
12957c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .load_timeout                                */
12967c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .unload_timeout                              */
12977c478bd9Sstevel@tonic-gate     MINUTES(300)              /* .erase_timeout      Five Hours               */
12987c478bd9Sstevel@tonic-gate   },
12997c478bd9Sstevel@tonic-gate 
13007c478bd9Sstevel@tonic-gate   /*
13017c478bd9Sstevel@tonic-gate    * Kennedy 1/2" reel
13027c478bd9Sstevel@tonic-gate    *
13037c478bd9Sstevel@tonic-gate    *     NOTES
13047c478bd9Sstevel@tonic-gate    *     -----
13057c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
13067c478bd9Sstevel@tonic-gate    *
13077c478bd9Sstevel@tonic-gate    *  o This entry uses a shortened Vendor-product ID string for the
1308*55fea89dSDan Cross    *    INQUIRY match.
13097c478bd9Sstevel@tonic-gate    *
13107c478bd9Sstevel@tonic-gate    * [1] The density code entry requires four values, even if there are less
13117c478bd9Sstevel@tonic-gate    *     than four values for the drive.
13127c478bd9Sstevel@tonic-gate    * [2] The Kennedy 1/2" reel has only one speed (if the driver ever cares).
13137c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
13147c478bd9Sstevel@tonic-gate    */
13157c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
13167c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
13177c478bd9Sstevel@tonic-gate     "Kennedy 1/2\" Reel",     /* .name            Display ("pretty") name     */
13187c478bd9Sstevel@tonic-gate     4,                        /* .length          Length of next item...      */
13197c478bd9Sstevel@tonic-gate     "KENN***",                /* .vid             Vendor-product ID string    */
13207c478bd9Sstevel@tonic-gate     ST_TYPE_KENNEDY,          /* .type            Numeric type (cf. mtio.h)   */
13217c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
13227c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
13237c478bd9Sstevel@tonic-gate     ST_VARIABLE |             /*    00001           Supports variable length  */
13247c478bd9Sstevel@tonic-gate     ST_REEL     |             /*    00004           1/2-inch reel tape device */
13257c478bd9Sstevel@tonic-gate     ST_BSF      |             /*    00008           Supports SPACE block fwd  */
13267c478bd9Sstevel@tonic-gate     ST_BSR      |             /*    00010           Supports SPACE block rev  */
13277c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
13287c478bd9Sstevel@tonic-gate                               /*    -----                                     */
13297c478bd9Sstevel@tonic-gate                               /*    0041D                                     */
13307c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
13317c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
13327c478bd9Sstevel@tonic-gate     {0x01, 0x02, 0x03, 0x03}, /* .densities       Density codes [Note 1]      */
13337c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
13347c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
13357c478bd9Sstevel@tonic-gate   },
13367c478bd9Sstevel@tonic-gate 
13377c478bd9Sstevel@tonic-gate   /*
13387c478bd9Sstevel@tonic-gate    * M4 Data Systems 9303 transport with 9700 512k i/f
13397c478bd9Sstevel@tonic-gate    *
13407c478bd9Sstevel@tonic-gate    *     NOTES
13417c478bd9Sstevel@tonic-gate    *     -----
13427c478bd9Sstevel@tonic-gate    *  o  The M4 Data 9303 is in non-buffered mode because it doesn't
13437c478bd9Sstevel@tonic-gate    *     flush the buffer at end of tape writes. If you don't care
13447c478bd9Sstevel@tonic-gate    *     about end of tape conditions (e.g., you use dump(8) which
13457c478bd9Sstevel@tonic-gate    *     cannot handle end-of-tape anyhow), take out the ST_NOBUF.
13467c478bd9Sstevel@tonic-gate    *
13477c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
13487c478bd9Sstevel@tonic-gate    *
13497c478bd9Sstevel@tonic-gate    * [1] The density code entry requires four values, even if there are less
13507c478bd9Sstevel@tonic-gate    *     than four values for the drive.
13517c478bd9Sstevel@tonic-gate    * [2] The M4 Data has only one speed (if the driver ever cares).
13527c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
13537c478bd9Sstevel@tonic-gate    */
13547c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
13557c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
13567c478bd9Sstevel@tonic-gate     "M4-Data 1/2\" Reel",     /* .name            Display ("pretty") name     */
13577c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
13587c478bd9Sstevel@tonic-gate     "M4 DATA 123107 SCSI",    /* .vid             Vendor-product ID string    */
13597c478bd9Sstevel@tonic-gate     ST_TYPE_REEL,             /* .type            Numeric type (cf. mtio.h)   */
13607c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
13617c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
13627c478bd9Sstevel@tonic-gate     ST_VARIABLE  |            /*    00001           Supports variable length  */
13637c478bd9Sstevel@tonic-gate     ST_REEL      |            /*    00004           1/2-inch reel tape device */
13647c478bd9Sstevel@tonic-gate     ST_BSF       |            /*    00008           Supports SPACE block fwd  */
13657c478bd9Sstevel@tonic-gate     ST_BSR       |            /*    00010           Supports SPACE block rev  */
13667c478bd9Sstevel@tonic-gate     ST_NOBUF     |            /*    00080           Don't use buffered mode.  */
13677c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
13687c478bd9Sstevel@tonic-gate                               /*    -----                                     */
13697c478bd9Sstevel@tonic-gate                               /*    0049D                                     */
13707c478bd9Sstevel@tonic-gate     500,                      /* .max_rretries    [Note 3]                    */
13717c478bd9Sstevel@tonic-gate     500,                      /* .max_wretries    [Note 3]                    */
13727c478bd9Sstevel@tonic-gate     {0x01, 0x02, 0x06, 0x06}, /* .densities       Density codes [Note 1]      */
13737c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
13747c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
13757c478bd9Sstevel@tonic-gate   },
13767c478bd9Sstevel@tonic-gate 
13777c478bd9Sstevel@tonic-gate   /*
13787c478bd9Sstevel@tonic-gate    * Quantum VS 160
1379*55fea89dSDan Cross    *
13807c478bd9Sstevel@tonic-gate    * Notes
13817c478bd9Sstevel@tonic-gate    * [1] The VS160 reads several formats which the drive autodetects.
13827c478bd9Sstevel@tonic-gate    *     It can write only in VS160 format so all densities set ro 0x50.
13837c478bd9Sstevel@tonic-gate    * [2] The speed field is not used and the VS160's speed is not setable.
13847c478bd9Sstevel@tonic-gate    * [3] Retry counts are not used any more and set to -1.
13857c478bd9Sstevel@tonic-gate    */
13867c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
13877c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
13887c478bd9Sstevel@tonic-gate     "Quantum VS160",          /* .name            Display ("pretty") name     */
13897c478bd9Sstevel@tonic-gate     17,                       /* .length          Length of next item...      */
13907c478bd9Sstevel@tonic-gate     "QUANTUM DLT VS160",      /* .vid             Vendor-product ID string    */
13917c478bd9Sstevel@tonic-gate     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
13927c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
13937c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
13947c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001         Supports variable length    */
13957c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008         Supports SPACE block fwd    */
13967c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010         Supports SPACE block rev    */
13977c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040         Has only one density        */
13987c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200         Recognizes end-of-data      */
13997c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400         Driver can be unloaded      */
14007c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000         Supports blocks > 64KB      */
14017c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000         Uses Mode select Compress   */
14027c478bd9Sstevel@tonic-gate                               /* --------                                     */
14037c478bd9Sstevel@tonic-gate                               /* 00018659                                     */
14047c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
14057c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
14067c478bd9Sstevel@tonic-gate     {0x50, 0x50, 0x50, 0x50}, /* .densities       [Note 1]                    */
14077c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
14087c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
14097c478bd9Sstevel@tonic-gate     MINUTES(2),               /* .non_motion_timeout Nothing special          */
14107c478bd9Sstevel@tonic-gate     MINUTES(15),              /* .io_timeout         First write to new tape  */
14117c478bd9Sstevel@tonic-gate     MINUTES(15),              /* .rewind_timeout     15 minutes               */
14127c478bd9Sstevel@tonic-gate     MINUTES(15),              /* .space_timeout      15 minutes               */
14137c478bd9Sstevel@tonic-gate     MINUTES(15),              /* .load_timeout       read catalog             */
14147c478bd9Sstevel@tonic-gate     MINUTES(15),              /* .unload_timeout     write catalog + unthread */
14157c478bd9Sstevel@tonic-gate     MINUTES(180)              /* .erase_timeout      3 hours                  */
14167c478bd9Sstevel@tonic-gate   },
14177c478bd9Sstevel@tonic-gate   /*
14187c478bd9Sstevel@tonic-gate    * Quantum Super DLT600
14197c478bd9Sstevel@tonic-gate    *
14207c478bd9Sstevel@tonic-gate    *    NOTES
14217c478bd9Sstevel@tonic-gate    *    -----
14227c478bd9Sstevel@tonic-gate    *
14237c478bd9Sstevel@tonic-gate    * [1] The Super DLT 600 supports many tape formats, Most are media selected.
14247c478bd9Sstevel@tonic-gate    *     Previous DLT drives had density codes for compress and non-compress,
14257c478bd9Sstevel@tonic-gate          This drive uses mode select to control compression.
14267c478bd9Sstevel@tonic-gate    * [2] The Super DLT has only one speed (if the driver ever cares).
14277c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
14287c478bd9Sstevel@tonic-gate    */
14297c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
14307c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
14317c478bd9Sstevel@tonic-gate     "Quantum Super DLT 600",  /* .name            Display ("pretty") name     */
14327c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
14337c478bd9Sstevel@tonic-gate     "QUANTUM SDLT600",        /* .vid             Vendor-product ID string    */
14347c478bd9Sstevel@tonic-gate     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
14357c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
14367c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
14375988135dSrralphs     ST_VARIABLE         |     /*  0000001         Supports variable length    */
14385988135dSrralphs     ST_BSF              |     /*  0000008         Supports SPACE block fwd    */
14395988135dSrralphs     ST_BSR              |     /*  0000010         Supports SPACE block rev    */
14405988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200         Recognizes end-of-data      */
14415988135dSrralphs     ST_UNLOADABLE       |     /*  0000400         Driver can be unloaded      */
14425988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000         Supports blocks > 64KB      */
14435988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000         Uses Mode select Compress   */
14445988135dSrralphs     ST_WORMABLE,              /*  1000000         Is capable of WORM          */
14455988135dSrralphs                               /*  -------                                     */
14465988135dSrralphs                               /*  1018619                                     */
14477c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
14487c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
14497c478bd9Sstevel@tonic-gate     {0x4a, 0x4a, 0x4a, 0x4a}, /* .densities       [Note 1]                    */
14507c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
14517c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
14527c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing special          */
14537c478bd9Sstevel@tonic-gate     MINUTES(60),              /* .io_timeout Four    One Hour                 */
14547c478bd9Sstevel@tonic-gate     MINUTES(4),               /* .rewind_timeout     Four Minutes             */
14557c478bd9Sstevel@tonic-gate     MINUTES(360),             /* .space_timeout      6 Hour if Directory bad  */
14567c478bd9Sstevel@tonic-gate     MINUTES(16),              /* .load_timeout       Nothing Special          */
14577c478bd9Sstevel@tonic-gate     MINUTES(16),              /* .unload_timeout     Nothing Special          */
14587c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
14597c478bd9Sstevel@tonic-gate   },
14607c478bd9Sstevel@tonic-gate 
14617c478bd9Sstevel@tonic-gate  /*
14627c478bd9Sstevel@tonic-gate    * Quantum Super DLT320
14637c478bd9Sstevel@tonic-gate    *
14647c478bd9Sstevel@tonic-gate    *    NOTES
14657c478bd9Sstevel@tonic-gate    *    -----
14667c478bd9Sstevel@tonic-gate    *  o  There is not going to be a SUN version of this drive. It will
14677c478bd9Sstevel@tonic-gate    *     be released as QUANTUM only.
14687c478bd9Sstevel@tonic-gate    *
14697c478bd9Sstevel@tonic-gate    * [1] The Super DLT implements many tape formats, but the st driver supports
14707c478bd9Sstevel@tonic-gate    *     only the four highest densities.
14717c478bd9Sstevel@tonic-gate    * [2] The Super DLT has only one speed (if the driver ever cares).
14727c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
14737c478bd9Sstevel@tonic-gate    */
14747c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
14757c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
14767c478bd9Sstevel@tonic-gate     "Quantum Super DLT 320",  /* .name            Display ("pretty") name     */
14777c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
14787c478bd9Sstevel@tonic-gate     "QUANTUM SDLT320",        /* .vid             Vendor-product ID string    */
14797c478bd9Sstevel@tonic-gate     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
14807c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
14817c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
14827c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001         Supports variable length    */
14837c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008         Supports SPACE block fwd    */
14847c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010         Supports SPACE block rev    */
14857c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200         Recognizes end-of-data      */
14867c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400         Driver can be unloaded      */
14877c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000         Supports blocks > 64KB      */
14887c478bd9Sstevel@tonic-gate                               /* --------                                     */
14897c478bd9Sstevel@tonic-gate                               /* 00008619                                     */
14907c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
14917c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
14927c478bd9Sstevel@tonic-gate     {0x90, 0x91, 0x92, 0x93}, /* .densities       [Note 1]                    */
14937c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
14947c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
14957c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Default 2 minutes        */
14967c478bd9Sstevel@tonic-gate     MINUTES(60),              /* .io_timeout Four    Now 1 hour               */
14977c478bd9Sstevel@tonic-gate     MINUTES(4),               /* .rewind_timeout     Four Minutes             */
14987c478bd9Sstevel@tonic-gate     MINUTES(360),             /* .space_timeout      Six Hours                */
14997c478bd9Sstevel@tonic-gate     MINUTES(16),              /* .load_timeout       Sixteen Minutes          */
15007c478bd9Sstevel@tonic-gate     MINUTES(16),              /* .unload_timeout     Sixteen Minutes          */
15017c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
15027c478bd9Sstevel@tonic-gate   },
15037c478bd9Sstevel@tonic-gate 
15047c478bd9Sstevel@tonic-gate   /*
15057c478bd9Sstevel@tonic-gate    * Quantum Super DLT
15067c478bd9Sstevel@tonic-gate    *
15077c478bd9Sstevel@tonic-gate    *    NOTES
15087c478bd9Sstevel@tonic-gate    *    -----
15097c478bd9Sstevel@tonic-gate    *  o  There is not going to be a SUN version of this drive. It will
15107c478bd9Sstevel@tonic-gate    *     be released as QUANTUM only.
15117c478bd9Sstevel@tonic-gate    *
15127c478bd9Sstevel@tonic-gate    * [1] The Super DLT implements many tape formats, but the st driver supports
15137c478bd9Sstevel@tonic-gate    *     only the four highest densities.
15147c478bd9Sstevel@tonic-gate    * [2] The Super DLT has only one speed (if the driver ever cares).
15157c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
15167c478bd9Sstevel@tonic-gate    */
15177c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
15187c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
15197c478bd9Sstevel@tonic-gate     "Quantum Super DLT 220",  /* .name            Display ("pretty") name     */
15207c478bd9Sstevel@tonic-gate     17,                       /* .length          Length of next item...      */
15217c478bd9Sstevel@tonic-gate     "QUANTUM SuperDLT1",      /* .vid             Vendor-product ID string    */
1522*55fea89dSDan Cross     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
15237c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
15247c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
15257c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001         Supports variable length    */
15267c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008         Supports SPACE block fwd    */
15277c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010         Supports SPACE block rev    */
15287c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200         Recognizes end-of-data      */
15297c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400         Driver can be unloaded      */
15307c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000         Supports blocks > 64KB      */
15317c478bd9Sstevel@tonic-gate                               /* --------                                     */
15327c478bd9Sstevel@tonic-gate                               /* 00008619                                     */
15337c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    [Note 3]                    */
15347c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    [Note 3]                    */
15357c478bd9Sstevel@tonic-gate     {0x88, 0x89, 0x90, 0x91}, /* .densities       [Note 1]                    */
15367c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
15377c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
15387c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Default 2 minutes        */
15397c478bd9Sstevel@tonic-gate     MINUTES(60),              /* .io_timeout Four    Now 1 hour               */
15407c478bd9Sstevel@tonic-gate     MINUTES(4),               /* .rewind_timeout     Four Minutes             */
15417c478bd9Sstevel@tonic-gate     MINUTES(360),             /* .space_timeout      Six Hours                */
15427c478bd9Sstevel@tonic-gate     MINUTES(16),              /* .load_timeout       Sixteen Minutes          */
15437c478bd9Sstevel@tonic-gate     MINUTES(16),              /* .unload_timeout     Sixteen Minutes          */
15447c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
15457c478bd9Sstevel@tonic-gate   },
15467c478bd9Sstevel@tonic-gate 
15477c478bd9Sstevel@tonic-gate   /*
15487c478bd9Sstevel@tonic-gate    * Quantum DLT8000
15497c478bd9Sstevel@tonic-gate    *
15507c478bd9Sstevel@tonic-gate    *    NOTES
15517c478bd9Sstevel@tonic-gate    *    -----
15527c478bd9Sstevel@tonic-gate    *  o  There is not going to be a SUN version of this drive. It will
15537c478bd9Sstevel@tonic-gate    *     be released as QUANTUM only.
15547c478bd9Sstevel@tonic-gate    *
15557c478bd9Sstevel@tonic-gate    * [1] The DLT8000 implements many tape formats, but the st driver supports
15567c478bd9Sstevel@tonic-gate    *     only the four highest densities.
15577c478bd9Sstevel@tonic-gate    * [2] The DLT8000 has only one speed (if the driver ever cares).
15587c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
15597c478bd9Sstevel@tonic-gate    */
15607c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
15617c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
15627c478bd9Sstevel@tonic-gate     "Quantum DLT8000",        /* .name            Display ("pretty") name     */
15637c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
15647c478bd9Sstevel@tonic-gate     "QUANTUM DLT8000",        /* .vid             Vendor-product ID string    */
1565*55fea89dSDan Cross     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
15667c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
15677c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
15687c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
15697c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
15707c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
15717c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
15727c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
15737c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS    |     /*    01000           More time for some ops    */
15747c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
15757c478bd9Sstevel@tonic-gate     ST_CLN_TYPE_3,            /* 40000000                                     */
15767c478bd9Sstevel@tonic-gate                               /*    -----                                     */
15777c478bd9Sstevel@tonic-gate                               /* 40009619                                     */
15787c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
15797c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
15807c478bd9Sstevel@tonic-gate     {0x84, 0x85, 0x88, 0x89}, /* .densities       [Note 1]                    */
15817c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
15827c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
15837c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing special          */
15847c478bd9Sstevel@tonic-gate     0,                        /* .io_timeout Four    Nothing Special          */
15857c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
15867c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
15877c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
15887c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
15897c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
15907c478bd9Sstevel@tonic-gate   },
15917c478bd9Sstevel@tonic-gate 
15927c478bd9Sstevel@tonic-gate   /*
15937c478bd9Sstevel@tonic-gate    * Quantum DLT7000
15947c478bd9Sstevel@tonic-gate    *
15957c478bd9Sstevel@tonic-gate    *     NOTES
15967c478bd9Sstevel@tonic-gate    *     -----
15977c478bd9Sstevel@tonic-gate    * [1] The DLT7000 implements many tape formats, but the st driver supports
15987c478bd9Sstevel@tonic-gate    *     only the four highest densities.
15997c478bd9Sstevel@tonic-gate    * [2] The DLT7000 has only one speed (if the driver ever cares).
16007c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
16017c478bd9Sstevel@tonic-gate    * [4] Data is buffered in the driver and pre-acked to the application. This
16027c478bd9Sstevel@tonic-gate    *      is only supported in Solaris 2.5.1.
16037c478bd9Sstevel@tonic-gate    */
16047c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
16057c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
16067c478bd9Sstevel@tonic-gate     "Quantum DLT7000",        /* .name            Display ("pretty") name     */
16077c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
16087c478bd9Sstevel@tonic-gate     "QUANTUM DLT7000",        /* .vid             Vendor-product ID string    */
16097c478bd9Sstevel@tonic-gate     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
16107c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
16117c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
16127c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
16137c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
16147c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
16157c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
16167c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
16177c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS    |     /*    01000           More time for some ops    */
16187c478bd9Sstevel@tonic-gate     ST_BUFFERED_WRITES  |     /*    04000           [Note 4]                  */
16197c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
16207c478bd9Sstevel@tonic-gate     ST_CLN_TYPE_3,            /* 40000000         Asks to be cleaned this way */
16217c478bd9Sstevel@tonic-gate                               /* --------                                     */
16227c478bd9Sstevel@tonic-gate                               /* 4000D619                                     */
16237c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
16247c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
16257c478bd9Sstevel@tonic-gate     {0x82, 0x83, 0x84, 0x85}, /* .densities       Density codes [Note 1]      */
16267c478bd9Sstevel@tonic-gate     MT_DENSITY3,              /* .default_density (.densities[x])             */
16277c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
16287c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing special          */
16297c478bd9Sstevel@tonic-gate     0,                        /* .io_timeout Four    Nothing Special          */
16307c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
16317c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
16327c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
16337c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
16347c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
16357c478bd9Sstevel@tonic-gate   },
16367c478bd9Sstevel@tonic-gate 
16377c478bd9Sstevel@tonic-gate   /*
16387c478bd9Sstevel@tonic-gate    * Quantum DLT4000
16397c478bd9Sstevel@tonic-gate    *
16407c478bd9Sstevel@tonic-gate    *     NOTES
16417c478bd9Sstevel@tonic-gate    *     -----
16427c478bd9Sstevel@tonic-gate    * [1] The DLT4000 implements many tape formats, but the st driver supports
16437c478bd9Sstevel@tonic-gate    *     only the four highest densities.
16447c478bd9Sstevel@tonic-gate    * [2] The DLT4000 has only one speed (if the driver ever cares).
16457c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
16467c478bd9Sstevel@tonic-gate    * [4] Data is buffered in the driver and pre-acked to the application. This
16477c478bd9Sstevel@tonic-gate    *     is only supported in 2.5.1.
16487c478bd9Sstevel@tonic-gate    */
16497c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
16507c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
16517c478bd9Sstevel@tonic-gate     "Quantum DLT4000",        /* .name            Display ("pretty") name     */
16527c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
16537c478bd9Sstevel@tonic-gate     "Quantum DLT4000",        /* .vid             Vendor-product ID string    */
16547c478bd9Sstevel@tonic-gate     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
16557c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
16567c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
16577c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
16587c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
16597c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
16607c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
16617c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
16627c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
16637c478bd9Sstevel@tonic-gate     ST_BUFFERED_WRITES |      /*    04000           [Note 4]                  */
16647c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT|      /*    08000           Supports blocks > 64KB    */
16657c478bd9Sstevel@tonic-gate     ST_CLN_TYPE_3,            /* 40000000         Asks to be cleaned this way */
16667c478bd9Sstevel@tonic-gate                               /* --------                                     */
16677c478bd9Sstevel@tonic-gate                               /* 4000D619                                     */
16687c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
16697c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
16707c478bd9Sstevel@tonic-gate     {0x80, 0x81, 0x82, 0x83}, /* .densities       Density codes [Note 1]      */
16717c478bd9Sstevel@tonic-gate     MT_DENSITY3,              /* .default_density (.densities[x])             */
16727c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
16737c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing special          */
16747c478bd9Sstevel@tonic-gate     0,                        /* .io_timeout Four    Nothing Special          */
16757c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
16767c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
16777c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
16787c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
16797c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
16807c478bd9Sstevel@tonic-gate   },
16817c478bd9Sstevel@tonic-gate 
168243ecc7eaSzl   /*
168343ecc7eaSzl    * [1] The DLT-S4 has three densites at this time,
168443ecc7eaSzl    *     0x49 for SuperDLT tape I, 0x4a for SuperDLT tape II,
168543ecc7eaSzl    *     0x4b for SuperDLT tape III.
168643ecc7eaSzl    *     This drive is configured with ST_KNOWS_MEDIA.
168743ecc7eaSzl    *     That means that it will look at the mediatype from the mode sense
168843ecc7eaSzl    *     to select the density code. The compression will be selected based
168943ecc7eaSzl    *     on the minor node the user opened.
169043ecc7eaSzl    * [2] S4 reports a medium type that is used to select the density.
169143ecc7eaSzl    */
169243ecc7eaSzl   {                           /* Structure member Description                 */
169343ecc7eaSzl                               /* ---------------- -----------                 */
169443ecc7eaSzl     "Quantum DLT-S4",         /* .name            Display ("pretty") name     */
169543ecc7eaSzl     14,                       /* .length          Length of next item...      */
169643ecc7eaSzl     "QUANTUM DLT-S4",         /* .vid             Vendor-product ID string    */
169743ecc7eaSzl     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
169843ecc7eaSzl     0,                        /* .bsize           Block size (0 = variable)   */
169943ecc7eaSzl                               /* .options         Drive option flags:         */
17005988135dSrralphs     ST_VARIABLE         |     /*  0000001           Supports variable length  */
17015988135dSrralphs     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
17025988135dSrralphs     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
17035988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200           Recognizes end-of-data    */
17045988135dSrralphs     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
17055988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
17065988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000           [Note 1]                  */
17075988135dSrralphs     ST_KNOWS_MEDIA      |     /*  0800000         Media detrmines density     */
17085988135dSrralphs     ST_WORMABLE,              /*  1000000            Supports WORM            */
170943ecc7eaSzl                               /*    -----                                     */
17105988135dSrralphs                               /*  1818619                                     */
171143ecc7eaSzl     -1,                       /* .max_rretries    Not used any more.          */
171243ecc7eaSzl     -1,                       /* .max_wretries    Not used any more.          */
171343ecc7eaSzl     {0x49, 0x4a, 0x4b, 0x4b}, /* .densities       Density codes [Note 1]      */
171443ecc7eaSzl     MT_DENSITY4,              /* .default_density (.densities[x])             */
171543ecc7eaSzl     {0x86, 0x87, 0x91, 0x91}, /* .mediatype       Media type  [Note 2]        */
171643ecc7eaSzl     0,                        /* .non_motion_time                             */
171743ecc7eaSzl     MINUTES(60),              /* .io_time                                     */
171843ecc7eaSzl     MINUTES(4),               /* .rewind_time                                 */
171943ecc7eaSzl     MINUTES(360),             /* .space_time                                  */
172043ecc7eaSzl     MINUTES(16),              /* .load_time                                   */
172143ecc7eaSzl     MINUTES(16),              /* .unload_time                                 */
172243ecc7eaSzl     MINUTES(360)              /* .erase_time                                  */
172343ecc7eaSzl   },
172443ecc7eaSzl 
17257c478bd9Sstevel@tonic-gate   /*
17267c478bd9Sstevel@tonic-gate    * Seagate Hornet NS20 Travan
17277c478bd9Sstevel@tonic-gate    *
17287c478bd9Sstevel@tonic-gate    *     NOTES
17297c478bd9Sstevel@tonic-gate    *     -----
17307c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
17317c478bd9Sstevel@tonic-gate    *
17327c478bd9Sstevel@tonic-gate    * [1] The NS20 Travan uses 0 or the "default" density code.
17337c478bd9Sstevel@tonic-gate    * [2] The NS20 Travan has only one speed (if the driver ever cares).
17347c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
17357c478bd9Sstevel@tonic-gate    */
17367c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
17377c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
17387c478bd9Sstevel@tonic-gate     "Seagate Hornet NS20 Travan",
17397c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
17407c478bd9Sstevel@tonic-gate     17,                       /* .length          Length of next item...      */
17417c478bd9Sstevel@tonic-gate     "Seagate STT20000N",      /* .vid             Vendor-product ID string    */
17427c478bd9Sstevel@tonic-gate     MT_ISQIC,                 /* .type            Numeric type (cf. mtio.h)   */
17437c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
17447c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
17457c478bd9Sstevel@tonic-gate     ST_QIC              |     /*    00002           QIC tape device           */
17467c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
17477c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
17487c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
17497c478bd9Sstevel@tonic-gate                               /*    -----                                     */
17507c478bd9Sstevel@tonic-gate                               /*    0840A                                     */
17517c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
17527c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
17537c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
17547c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density (.densities[x])             */
17557c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
17567c478bd9Sstevel@tonic-gate   },
17577c478bd9Sstevel@tonic-gate 
17587c478bd9Sstevel@tonic-gate   /*
17597c478bd9Sstevel@tonic-gate    * Seagate DAT 72
17607c478bd9Sstevel@tonic-gate    *
17617c478bd9Sstevel@tonic-gate    *  [1] Has only one density, Uses Mode Select to enable-disable compression.
17627c478bd9Sstevel@tonic-gate    *  [2] Only one speed.
17637c478bd9Sstevel@tonic-gate    */
17647c478bd9Sstevel@tonic-gate 
17657c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
17667c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
17677c478bd9Sstevel@tonic-gate     "Seagate DAT 72",         /* .name            Display ("pretty") name     */
17687c478bd9Sstevel@tonic-gate     23,                       /* .length          Length of next item...      */
17697c478bd9Sstevel@tonic-gate     "SEAGATE DAT    DAT72-00",/* .vid             Vendor-product ID string    */
17707c478bd9Sstevel@tonic-gate     MT_ISDAT,                 /* .type            Numeric type (cf. mtio.h)   */
17717c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
17727c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
17737c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           variable length records   */
17747c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
17757c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports backspace record */
17767c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Knows EOD when it sees it */
17777c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
17787c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
17797c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           Mode select compression   */
17807c478bd9Sstevel@tonic-gate                               /*    -----                                     */
17817c478bd9Sstevel@tonic-gate                               /*    18619                                     */
17827c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    Not used any more.          */
17837c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    Not Used any more.          */
17847c478bd9Sstevel@tonic-gate     {0x47, 0x47, 0x47, 0x47}, /* .densities       Density codes [Note 1]      */
17857c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
17867c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
17877c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout                          */
17887c478bd9Sstevel@tonic-gate     MINUTES(15),              /* .io_timeout                                  */
17897c478bd9Sstevel@tonic-gate     MINUTES(2),               /* .rewind_timeout                              */
17907c478bd9Sstevel@tonic-gate     MINUTES(15),              /* .space_timeout                               */
17917c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout                                */
17927c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout                              */
17937c478bd9Sstevel@tonic-gate     MINUTES(240)              /* .erase_timeout                               */
17947c478bd9Sstevel@tonic-gate   },
17957c478bd9Sstevel@tonic-gate 
17969b19ef81Szl   /*
17979b19ef81Szl    * Certance Ultrium LTO 3
17989b19ef81Szl    * [1] This drive supports 3 densites at this time.
17999b19ef81Szl    *     ST_MODE_SEL_COMP controls compression.
18009b19ef81Szl    * [2] max_rretries and max_wretries are not used but kept for
18019b19ef81Szl    *     backward compatibility.
18029b19ef81Szl    */
18039b19ef81Szl   {                           /* Structure member Description                 */
18049b19ef81Szl                               /* ---------------- -----------                 */
18059b19ef81Szl     "Certance Ultrium 3",     /* .name            Display ("pretty") name     */
18069b19ef81Szl     17,                       /* .length          Length of next item...      */
18079b19ef81Szl     "CERTANCEULTRIUM 3",      /* .vid             handles SCSI or FC          */
18089b19ef81Szl     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
18099b19ef81Szl     0,                        /* .bsize           Block size (0 = variable)   */
18109b19ef81Szl                               /* .options         Drive option flags:         */
18119b19ef81Szl     ST_VARIABLE         |     /*    00001           Supports variable length  */
18129b19ef81Szl     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
18139b19ef81Szl     ST_BSR              |     /*    00010           Supports SPACE block rev  */
18149b19ef81Szl     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
18159b19ef81Szl     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
18169b19ef81Szl     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
18179b19ef81Szl     ST_MODE_SEL_COMP,         /*    10000           Mode select compression   */
18189b19ef81Szl                               /*    -----                                     */
18199b19ef81Szl                               /*    18619                                     */
18209b19ef81Szl     -1,                       /* .max_rretries    [Note 2]                    */
18219b19ef81Szl     -1,                       /* .max_wretries    [Note 2]                    */
18229b19ef81Szl     {0x40, 0x42, 0x44, 0x44}, /* .densities       Density codes [Note 1]      */
18239b19ef81Szl     MT_DENSITY4,              /* .default_density (.densities[x])             */
18249b19ef81Szl     {0, 0, 0, 0},             /* .speeds          Speed codes                 */
18259b19ef81Szl     0,                        /* .non_motion_timeout                          */
18269b19ef81Szl     MINUTES(60),              /* .io_timeout                                  */
18279b19ef81Szl     MINUTES(35),              /* .rewind_timeout                              */
18289b19ef81Szl     MINUTES(60),              /* .space_timeout                               */
18299b19ef81Szl     MINUTES(35),              /* .load_timeout                                */
18309b19ef81Szl     MINUTES(35),              /* .unload_timeout                              */
18319b19ef81Szl     MINUTES(180)              /* .erase_timeout                               */
18329b19ef81Szl   },
18339b19ef81Szl 
18349b19ef81Szl   /*
18359b19ef81Szl    * Certance Ultrium LTO 2
18369b19ef81Szl    * [1] This drive supports two densites at this time.
18379b19ef81Szl    *     0x40 for Ultrium 1 and 0x42 for Ultrium 2.
18389b19ef81Szl    *     ST_MODE_SEL_COMP controls compression.
18399b19ef81Szl    * [2] max_rretries and max_wretries are not used but kept for
18409b19ef81Szl    *     backward compatibility.
18419b19ef81Szl    */
18429b19ef81Szl   {                           /* Structure member Description                 */
18439b19ef81Szl                               /* ---------------- -----------                 */
18449b19ef81Szl     "Certance Ultrium 2", /* .name            Display ("pretty") name     */
18459b19ef81Szl     17,                       /* .length          Length of next item...      */
18469b19ef81Szl     "CERTANCEULTRIUM 2",      /* .vid             handles SCSI or FC          */
18479b19ef81Szl     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
18489b19ef81Szl     0,                        /* .bsize           Block size (0 = variable)   */
18499b19ef81Szl                               /* .options         Drive option flags:         */
18509b19ef81Szl     ST_VARIABLE         |     /*    00001           Supports variable length  */
18519b19ef81Szl     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
18529b19ef81Szl     ST_BSR              |     /*    00010           Supports SPACE block rev  */
18539b19ef81Szl     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
18549b19ef81Szl     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
1855*55fea89dSDan Cross     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
18569b19ef81Szl     ST_MODE_SEL_COMP,         /*    10000           Mode select compression   */
18579b19ef81Szl                               /*    -----                                     */
18589b19ef81Szl                               /*    18619                                     */
18599b19ef81Szl     -1,                       /* .max_rretries    [Note 2]                    */
18609b19ef81Szl     -1,                       /* .max_wretries    [Note 2]                    */
18619b19ef81Szl     {0x40, 0x40, 0x42, 0x42}, /* .densities       Density codes [Note 1]      */
18629b19ef81Szl     MT_DENSITY4,              /* .default_density (.densities[x])             */
18639b19ef81Szl     {0, 0, 0, 0},             /* .speeds          Speed codes                 */
18649b19ef81Szl     0,                        /* .non_motion_timeout                          */
18659b19ef81Szl     MINUTES(60),              /* .io_timeout                                  */
18669b19ef81Szl     MINUTES(35),              /* .rewind_timeout                              */
18679b19ef81Szl     MINUTES(60),              /* .space_timeout                               */
18689b19ef81Szl     MINUTES(35),              /* .load_timeout                                */
18699b19ef81Szl     MINUTES(35),              /* .unload_timeout                              */
18709b19ef81Szl     MINUTES(180)              /* .erase_timeout                               */
18719b19ef81Szl   },
18729b19ef81Szl 
18737c478bd9Sstevel@tonic-gate   /*
18747c478bd9Sstevel@tonic-gate    * Seagate Ultrium LTO
18757c478bd9Sstevel@tonic-gate    *
18767c478bd9Sstevel@tonic-gate    *  [1] Has only one density, Uses Mode Select to enable-disable compression.
18777c478bd9Sstevel@tonic-gate    *  [2] Only one speed.
18787c478bd9Sstevel@tonic-gate    */
18797c478bd9Sstevel@tonic-gate 
18807c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
18817c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
18827c478bd9Sstevel@tonic-gate     "Seagate Ultrium LTO",    /* .name            Display ("pretty") name     */
18837c478bd9Sstevel@tonic-gate     23,                       /* .length          Length of next item...      */
18847c478bd9Sstevel@tonic-gate     "SEAGATE ULTRIUM06242-XX",/* .vid             Vendor-product ID string    */
18857c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
18867c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
18877c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
18887c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           variable length records   */
18897c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
18907c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports backspace record */
18917c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Knows EOD when it sees it */
18927c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
18937c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
18947c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           Mode select compression   */
18957c478bd9Sstevel@tonic-gate                               /*    -----                                     */
18967c478bd9Sstevel@tonic-gate                               /*    18619                                     */
18977c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    Not used any more.          */
18987c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    Not Used any more.          */
18997c478bd9Sstevel@tonic-gate     {0x40, 0x40, 0x40, 0x40}, /* .densities       Density codes [Note 1]      */
19007c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
19017c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
19027c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout                          */
19037c478bd9Sstevel@tonic-gate     MINUTES(10),              /* .io_timeout                                  */
19047c478bd9Sstevel@tonic-gate     MINUTES(15),              /* .rewind_timeout                              */
19057c478bd9Sstevel@tonic-gate     MINUTES(120),             /* .space_timeout                               */
19067c478bd9Sstevel@tonic-gate     MINUTES(5),               /* .load_timeout                                */
19077c478bd9Sstevel@tonic-gate     MINUTES(2),               /* .unload_timeout                              */
19087c478bd9Sstevel@tonic-gate     MINUTES(120)              /* .erase_timeout                               */
19097c478bd9Sstevel@tonic-gate   },
19107c478bd9Sstevel@tonic-gate 
19117c478bd9Sstevel@tonic-gate   /*
19127c478bd9Sstevel@tonic-gate    * SONY 4mm DAT
19137c478bd9Sstevel@tonic-gate    *
19147c478bd9Sstevel@tonic-gate    *     NOTES
19157c478bd9Sstevel@tonic-gate    *     -----
19167c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
19177c478bd9Sstevel@tonic-gate    *
19187c478bd9Sstevel@tonic-gate    *  o This entry uses a shortened Vendor-product ID string for the
1919*55fea89dSDan Cross    *    INQUIRY match.
19207c478bd9Sstevel@tonic-gate    *
19217c478bd9Sstevel@tonic-gate    * [1] The SDT-5000 uses 0 or the "default" density code.
19227c478bd9Sstevel@tonic-gate    * [2] The SDT-5000 has only one speed (if the driver ever cares).
19237c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
19247c478bd9Sstevel@tonic-gate    */
19257c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
19267c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
19277c478bd9Sstevel@tonic-gate     "SONY 4mm DAT",           /* .name            Display ("pretty") name     */
19287c478bd9Sstevel@tonic-gate     12,                       /* .length          Length of next item...      */
19297c478bd9Sstevel@tonic-gate     "SONY    SDT-****",       /* .vid             Vendor-product ID string    */
19307c478bd9Sstevel@tonic-gate     ST_TYPE_DAT,              /* .type            Numeric type (cf. mtio.h)   */
19317c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
19327c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
19337c478bd9Sstevel@tonic-gate     ST_VARIABLE   |           /*    00001           Supports variable length  */
19347c478bd9Sstevel@tonic-gate     ST_BSF        |           /*    00008           Supports SPACE block fwd  */
19357c478bd9Sstevel@tonic-gate     ST_BSR        |           /*    00010           Supports SPACE block rev  */
19367c478bd9Sstevel@tonic-gate     ST_LONG_ERASE |           /*    00020           Needs extra time to erase */
19377c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
19387c478bd9Sstevel@tonic-gate                               /*    -----                                     */
19397c478bd9Sstevel@tonic-gate                               /*    00439                                     */
19407c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
19417c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
19427c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
19437c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
19447c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
19457c478bd9Sstevel@tonic-gate   },
19467c478bd9Sstevel@tonic-gate 
19477c478bd9Sstevel@tonic-gate   /*
19485d751417Sgz    * Sun StorageTek T10000A tape drive.
19495d751417Sgz    *
19505d751417Sgz    *     NOTES
19515d751417Sgz    *     -----
19525d751417Sgz    *  o  The T10000A has special needs - support for SCSI LOCATE and
19535d751417Sgz    *     READ POSITION commands - so we must be sure to place this
19545d751417Sgz    *     entry before the one for ST_TYPE_STC3490 (generic STK
19555d751417Sgz    *     half-inch cartridge drives).
19565d751417Sgz    * [1] Compression on the T10000A is controlled
19575d751417Sgz    *     via the Device Configuration mode page.
1958*55fea89dSDan Cross    * [2] The T10000A has only one writable density, 0x4A.
19595d751417Sgz    * [3] The T10000A has only one speed (if the driver ever cares).
19605d751417Sgz    * [4] max_rretries and max_wretries are driver anachronisms.
19615d751417Sgz    */
19625d751417Sgz   {                           /* Structure member    Description              */
19635d751417Sgz                               /* ----------------    -----------              */
19645d751417Sgz     "Sun StorageTek T10000A", /* .name               Display ("pretty") name  */
19655d751417Sgz     15,                       /* .length             Length of next item...   */
19665d751417Sgz     "STK     T10000A",        /* .vid                Vendor-product ID string */
19675d751417Sgz     ST_TYPE_STK9840,          /* .type               Numeric type (cf. mtio.h)*/
19685d751417Sgz     0,                        /* .bsize              Block size (0 = variable)*/
19695d751417Sgz                               /* .options            Drive option flags:      */
19705988135dSrralphs     ST_VARIABLE         |     /*  0000001            Supports variable length */
19715988135dSrralphs     ST_BSF              |     /*  0000008            Supports SPACE block fwd */
19725988135dSrralphs     ST_BSR              |     /*  0000010            Supports SPACE block rev */
19735988135dSrralphs     ST_AUTODEN_OVERRIDE |     /*  0000040            Autodensity override flag*/
19745988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200            Recognizes end-of-data   */
19755988135dSrralphs     ST_UNLOADABLE       |     /*  0000400            Driver can be unloaded   */
19765988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000            Supports blocks > 64KB   */
19775988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000            [Note 1]                 */
19785988135dSrralphs     ST_WORMABLE,              /*  1000000            Supports WORM            */
19795988135dSrralphs                               /*  -------                                     */
19805988135dSrralphs                               /*  1018659                                     */
19815d751417Sgz     -1,                       /* .max_rretries       [Note 4]                 */
19825d751417Sgz     -1,                       /* .max_wretries       [Note 4]                 */
19835d751417Sgz     {0x4A,0x4A,0x4A,0x4A},    /* .densities          Density codes [Note 2]   */
19845d751417Sgz     MT_DENSITY4,              /* .default_density    (.densities[x])          */
19855d751417Sgz     {0,0,0,0},                /* .speeds             Speed codes [Note 3]     */
19865d751417Sgz     0,                        /* .non_motion_timeout Nothing Special          */
19875d751417Sgz     MINUTES(5),               /* .io_timeout Five    Five Minutes             */
19885d751417Sgz     0,                        /* .rewind_timeout     Nothing Special          */
19895d751417Sgz     0,                        /* .space_timeout      Nothing Special          */
19905d751417Sgz     0,                        /* .load_timeout       Nothing Special          */
19915d751417Sgz     0,                        /* .unload_timeout     Nothing Special          */
19925d751417Sgz     MINUTES(180)              /* .erase_timeout      Three Hours              */
19935d751417Sgz   },
19945d751417Sgz 
19955d751417Sgz   /*
19967c478bd9Sstevel@tonic-gate    * STK 9840C cartridge drive.
19977c478bd9Sstevel@tonic-gate    *
19987c478bd9Sstevel@tonic-gate    *     NOTES
19997c478bd9Sstevel@tonic-gate    *     -----
20007c478bd9Sstevel@tonic-gate    *  o  The 9840C has special needs - support for SCSI LOCATE and
20017c478bd9Sstevel@tonic-gate    *     READ POSITION commands - so we must be sure to place this
20027c478bd9Sstevel@tonic-gate    *     entry before the one for ST_TYPE_STC3490 (generic STK
20037c478bd9Sstevel@tonic-gate    *     half-inch cartridge drives).
20047c478bd9Sstevel@tonic-gate    * [1] Compression on the 9840C is controlled
20057c478bd9Sstevel@tonic-gate    *     via the Device Configuration mode page.
20067c478bd9Sstevel@tonic-gate    * [2] The 9840C has only one writable density, 0x45. I can read tapes writen
20077c478bd9Sstevel@tonic-gate    *     with 9840 and 9840B writen with there density code 0x42.
20087c478bd9Sstevel@tonic-gate    * [3] The 9840C has only one speed (if the driver ever cares).
20097c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver anachronisms.
20107c478bd9Sstevel@tonic-gate    */
20117c478bd9Sstevel@tonic-gate   {                           /* Structure member    Description              */
20127c478bd9Sstevel@tonic-gate                               /* ----------------    -----------              */
20137c478bd9Sstevel@tonic-gate     "StorageTek 9840C",       /* .name               Display ("pretty") name  */
20147c478bd9Sstevel@tonic-gate     14,                       /* .length             Length of next item...   */
20157c478bd9Sstevel@tonic-gate     "STK     T9840C",         /* .vid                Vendor-product ID string */
20167c478bd9Sstevel@tonic-gate     ST_TYPE_STK9840,          /* .type               Numeric type (cf. mtio.h)*/
20177c478bd9Sstevel@tonic-gate     0,                        /* .bsize              Block size (0 = variable)*/
20187c478bd9Sstevel@tonic-gate                               /* .options            Drive option flags:      */
20195988135dSrralphs     ST_VARIABLE         |     /*  0000001            Supports variable length */
20205988135dSrralphs     ST_BSF              |     /*  0000008            Supports SPACE block fwd */
20215988135dSrralphs     ST_BSR              |     /*  0000010            Supports SPACE block rev */
20225988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200            Recognizes end-of-data   */
20235988135dSrralphs     ST_UNLOADABLE       |     /*  0000400            Driver can be unloaded   */
20245988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000            Supports blocks > 64KB   */
20255988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000            [Note 1]                 */
20265988135dSrralphs     ST_WORMABLE,              /*  1000000            Supports WORM            */
20275988135dSrralphs                               /*  -------                                     */
20285988135dSrralphs                               /*  1018619                                     */
20297c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries       [Note 4]                 */
20307c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries       [Note 4]                 */
20317c478bd9Sstevel@tonic-gate     {0x45,0x45,0x45,0x45},    /* .densities          Density codes [Note 2]   */
20327c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density    (.densities[x])          */
20337c478bd9Sstevel@tonic-gate     {0,0,0,0},                /* .speeds             Speed codes [Note 3]     */
20347c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing Special          */
20357c478bd9Sstevel@tonic-gate     MINUTES(5),               /* .io_timeout Five    Five Minutes             */
20367c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
20377c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
20387c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
20397c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
20407c478bd9Sstevel@tonic-gate     MINUTES(70)               /* .erase_timeout      One Hour and ten Minutes */
20417c478bd9Sstevel@tonic-gate   },
20427c478bd9Sstevel@tonic-gate 
20437c478bd9Sstevel@tonic-gate   /*
20447c478bd9Sstevel@tonic-gate    * STK 9840B cartridge drive.
20457c478bd9Sstevel@tonic-gate    *
20467c478bd9Sstevel@tonic-gate    *     NOTES
20477c478bd9Sstevel@tonic-gate    *     -----
20487c478bd9Sstevel@tonic-gate    *  o  The 9840B has special needs - support for SCSI LOCATE and
20497c478bd9Sstevel@tonic-gate    *     READ POSITION commands - so we must be sure to place this
20507c478bd9Sstevel@tonic-gate    *     entry before the one for ST_TYPE_STC3490 (generic STK
20517c478bd9Sstevel@tonic-gate    *     half-inch cartridge drives).
20527c478bd9Sstevel@tonic-gate    * [1] Compression on the 9840B is controlled
20537c478bd9Sstevel@tonic-gate    *     via the Device Configuration mode page.
20547c478bd9Sstevel@tonic-gate    * [2] The 9840B has only one density, 0x42 (or 0 for "default").
20557c478bd9Sstevel@tonic-gate    * [3] The 9840B has only one speed (if the driver ever cares).
20567c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver anachronisms.
20577c478bd9Sstevel@tonic-gate    */
20587c478bd9Sstevel@tonic-gate   {                           /* Structure member    Description              */
20597c478bd9Sstevel@tonic-gate                               /* ----------------    -----------              */
20607c478bd9Sstevel@tonic-gate     "StorageTek 9840B",       /* .name               Display ("pretty") name  */
20617c478bd9Sstevel@tonic-gate     14,                       /* .length             Length of next item...   */
20627c478bd9Sstevel@tonic-gate     "STK     T9840B",         /* .vid                Vendor-product ID string */
20637c478bd9Sstevel@tonic-gate     ST_TYPE_STK9840,          /* .type               Numeric type (cf. mtio.h)*/
20647c478bd9Sstevel@tonic-gate     0,                        /* .bsize              Block size (0 = variable)*/
20657c478bd9Sstevel@tonic-gate                               /* .options            Drive option flags:      */
20665988135dSrralphs     ST_VARIABLE         |     /*  0000001            Supports variable length */
20675988135dSrralphs     ST_BSF              |     /*  0000008            Supports SPACE block fwd */
20685988135dSrralphs     ST_BSR              |     /*  0000010            Supports SPACE block rev */
20695988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200            Recognizes end-of-data   */
20705988135dSrralphs     ST_UNLOADABLE       |     /*  0000400            Driver can be unloaded   */
20715988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000            Supports blocks > 64KB   */
20725988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000            [Note 1]                 */
20735988135dSrralphs     ST_WORMABLE,              /*  1000000            Supports WORM            */
20745988135dSrralphs                               /*  -------                                     */
20755988135dSrralphs                               /*  1018619                                     */
20767c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries       [Note 4]                 */
20777c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries       [Note 4]                 */
20787c478bd9Sstevel@tonic-gate     {0x42,0x42,0x42,0x42},    /* .densities          Density codes [Note 2]   */
20797c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density    (.densities[x])          */
20807c478bd9Sstevel@tonic-gate     {0,0,0,0},                /* .speeds             Speed codes [Note 3]     */
20817c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing Special          */
20827c478bd9Sstevel@tonic-gate     MINUTES(5),               /* .io_timeout Five    Five Minutes             */
20837c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
20847c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
20857c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
20867c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
20877c478bd9Sstevel@tonic-gate     MINUTES(70)               /* .erase_timeout      One Hour and ten Minutes */
20887c478bd9Sstevel@tonic-gate   },
20897c478bd9Sstevel@tonic-gate 
20907c478bd9Sstevel@tonic-gate   /*
20917c478bd9Sstevel@tonic-gate    * STK 9940B cartridge drive.
20927c478bd9Sstevel@tonic-gate    *
20937c478bd9Sstevel@tonic-gate    *     NOTES
20947c478bd9Sstevel@tonic-gate    *     -----
20957c478bd9Sstevel@tonic-gate    * [1] Compression on the 9940 is controlled
20967c478bd9Sstevel@tonic-gate    *     via the Device Configuration mode page.
20977c478bd9Sstevel@tonic-gate    * [2] The 9940 has only one density, 0x44.
20987c478bd9Sstevel@tonic-gate    * [3] The 9940 has only one speed (if the driver ever cares).
20997c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver not used.
21007c478bd9Sstevel@tonic-gate    */
21017c478bd9Sstevel@tonic-gate   {                           /* Structure member    Description               */
21027c478bd9Sstevel@tonic-gate                               /* ----------------    -----------               */
21037c478bd9Sstevel@tonic-gate     "StorageTek 9940B",       /* .name               Display ("pretty") name   */
21047c478bd9Sstevel@tonic-gate     14,                       /* .length             Length of next item...    */
21057c478bd9Sstevel@tonic-gate     "STK     T9940B",         /* .vid                Vendor-product ID string  */
21067c478bd9Sstevel@tonic-gate     ST_TYPE_STK9840,          /* .type               Numeric type (cf. mtio.h) */
21077c478bd9Sstevel@tonic-gate     0,                        /* .bsize              Block size (0 = variable) */
21087c478bd9Sstevel@tonic-gate                               /* .options            Drive option flags:       */
21095988135dSrralphs     ST_VARIABLE         |     /*  0000001            Supports variable length  */
21105988135dSrralphs     ST_BSF              |     /*  0000008            Supports SPACE block fwd  */
21115988135dSrralphs     ST_BSR              |     /*  0000010            Supports SPACE block rev  */
21125988135dSrralphs     ST_AUTODEN_OVERRIDE |     /*  0000040            Autodensity override flag */
21135988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200            Recognizes end-of-data    */
21145988135dSrralphs     ST_UNLOADABLE       |     /*  0000400            Driver can be unloaded    */
21155988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000            Supports blocks > 64KB    */
21165988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000            [Note 1]                  */
21175988135dSrralphs     ST_WORMABLE,              /*  1000000            Supports WORM             */
21185988135dSrralphs                               /*  -------                                      */
21195988135dSrralphs                               /*  1018659                                      */
21207c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries       [Note 4]                  */
21217c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries       [Note 4]                  */
21227c478bd9Sstevel@tonic-gate     {0x44,0x44,0x44,0x44},    /* .densities          Density codes [Note 2]    */
21237c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density    (.densities[x])           */
21247c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds             Speed codes [Note 3]      */
21257c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing Special           */
21267c478bd9Sstevel@tonic-gate     MINUTES(5),               /* .io_timeout         Five minutes              */
21277c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special           */
21287c478bd9Sstevel@tonic-gate     MINUTES(180),             /* .space_timeout      Three Hours     3 x 9840  */
21297c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special           */
21307c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special           */
21317c478bd9Sstevel@tonic-gate     MINUTES(210)              /* .erase_timeout      Three and a half hours    */
21327c478bd9Sstevel@tonic-gate   },
21337c478bd9Sstevel@tonic-gate 
21347c478bd9Sstevel@tonic-gate   /*
21357c478bd9Sstevel@tonic-gate    * STK 9940 cartridge drive.
21367c478bd9Sstevel@tonic-gate    *
21377c478bd9Sstevel@tonic-gate    *     NOTES
21387c478bd9Sstevel@tonic-gate    *     -----
21397c478bd9Sstevel@tonic-gate    * [1] Compression on the 9940 is controlled
21407c478bd9Sstevel@tonic-gate    *     via the Device Configuration mode page.
21417c478bd9Sstevel@tonic-gate    * [2] The 9940 has only one density, 0x43.
21427c478bd9Sstevel@tonic-gate    * [3] The 9940 has only one speed (if the driver ever cares).
21437c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver not used.
21447c478bd9Sstevel@tonic-gate    */
21457c478bd9Sstevel@tonic-gate   {                           /* Structure member    Description              */
21467c478bd9Sstevel@tonic-gate                               /* ----------------    -----------              */
21477c478bd9Sstevel@tonic-gate     "StorageTek 9940",        /* .name               Display ("pretty") name  */
21487c478bd9Sstevel@tonic-gate     14,                       /* .length             Length of next item...   */
21497c478bd9Sstevel@tonic-gate     "STK     T9940A",         /* .vid                Vendor-product ID string */
21507c478bd9Sstevel@tonic-gate     ST_TYPE_STK9840,          /* .type               Numeric type (cf. mtio.h)*/
21517c478bd9Sstevel@tonic-gate     0,                        /* .bsize              Block size (0 = variable)*/
21527c478bd9Sstevel@tonic-gate                               /* .options            Drive option flags:      */
21535988135dSrralphs     ST_VARIABLE         |     /*  0000001            Supports variable length */
21545988135dSrralphs     ST_BSF              |     /*  0000008            Supports SPACE block fwd */
21555988135dSrralphs     ST_BSR              |     /*  0000010            Supports SPACE block rev */
21565988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200            Recognizes end-of-data   */
21575988135dSrralphs     ST_UNLOADABLE       |     /*  0000400            Driver can be unloaded   */
21585988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000            Supports blocks > 64KB   */
21595988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000            [Note 1]                 */
21605988135dSrralphs     ST_WORMABLE,              /*  1000000            Supports WORM            */
21615988135dSrralphs                               /*  -------                                     */
21625988135dSrralphs                               /*  1018619                                     */
21637c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries       [Note 4]                 */
21647c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries       [Note 4]                 */
21657c478bd9Sstevel@tonic-gate     {0x43,0x43,0x43,0x43},    /* .densities          Density codes [Note 2]   */
21667c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density    (.densities[x])          */
21677c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds             Speed codes [Note 3]     */
21687c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing Special          */
2169*55fea89dSDan Cross     MINUTES(5),               /* .io_timeout         Five Minutes             */
21707c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
21717c478bd9Sstevel@tonic-gate     MINUTES(180),             /* .space_timeout      Three Hours     3 x 9840 */
21727c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
21737c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
21747c478bd9Sstevel@tonic-gate     MINUTES(210)              /* .erase_timeout      Three and a half hours   */
21757c478bd9Sstevel@tonic-gate   },
21767c478bd9Sstevel@tonic-gate 
21777c478bd9Sstevel@tonic-gate   /*
21787c478bd9Sstevel@tonic-gate    * STK 9840 cartridge drive (Sun codename: Ironsides)
21797c478bd9Sstevel@tonic-gate    *
21807c478bd9Sstevel@tonic-gate    *     NOTES
21817c478bd9Sstevel@tonic-gate    *     -----
21827c478bd9Sstevel@tonic-gate    *  o  The 9840 has special needs - support for SCSI LOCATE and
21837c478bd9Sstevel@tonic-gate    *     READ POSITION commands - so we must be sure to place this
21847c478bd9Sstevel@tonic-gate    *     entry before the one for ST_TYPE_STC3490 (generic STK
21857c478bd9Sstevel@tonic-gate    *     half-inch cartridge drives).
21867c478bd9Sstevel@tonic-gate    * [1] Compression on the 9840 is controlled
21877c478bd9Sstevel@tonic-gate    *     via the Device Configuration mode page.
21887c478bd9Sstevel@tonic-gate    * [2] The 9840 has only one density, 0x42 (or 0 for "default").
21897c478bd9Sstevel@tonic-gate    * [3] The 9840 has only one speed (if the driver ever cares).
21907c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver anachronisms.
21917c478bd9Sstevel@tonic-gate    * [5] ST_LONG_ERASE is not needed or used when .erase_timeout
21927c478bd9Sstevel@tonic-gate    *     is non-zero.
21937c478bd9Sstevel@tonic-gate    */
21947c478bd9Sstevel@tonic-gate   {                           /* Structure member    Description              */
21957c478bd9Sstevel@tonic-gate                               /* ----------------    -----------              */
21967c478bd9Sstevel@tonic-gate     "StorageTek 9840",        /* .name               Display ("pretty") name  */
21977c478bd9Sstevel@tonic-gate     12,                       /* .length             Length of next item...   */
21987c478bd9Sstevel@tonic-gate     "STK     9840",           /* .vid                Vendor-product ID string */
21997c478bd9Sstevel@tonic-gate     ST_TYPE_STK9840,          /* .type               Numeric type (cf. mtio.h)*/
22007c478bd9Sstevel@tonic-gate     0,                        /* .bsize              Block size (0 = variable)*/
22017c478bd9Sstevel@tonic-gate                               /* .options            Drive option flags:      */
22025988135dSrralphs     ST_VARIABLE         |     /*  0000001            Supports variable length */
22035988135dSrralphs     ST_BSF              |     /*  0000008            Supports SPACE block fwd */
22045988135dSrralphs     ST_BSR              |     /*  0000010            Supports SPACE block rev */
22055988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200            Recognizes end-of-data   */
22065988135dSrralphs     ST_UNLOADABLE       |     /*  0000400            Driver can be unloaded   */
22075988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000            Supports blocks > 64KB   */
22085988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000            [Note 1]                 */
22095988135dSrralphs     ST_WORMABLE,              /*  1000000            Supports WORM            */
22105988135dSrralphs                               /*  -------                                     */
22115988135dSrralphs                               /*  1018619                                     */
22127c478bd9Sstevel@tonic-gate     10,                       /* .max_rretries       [Note 4]                 */
22137c478bd9Sstevel@tonic-gate     10,                       /* .max_wretries       [Note 4]                 */
22147c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities          Density codes [Note 2]   */
22157c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density    (.densities[x])          */
22167c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds             Speed codes [Note 3]     */
22177c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing Special          */
22187c478bd9Sstevel@tonic-gate     MINUTES(5),               /* .io_timeout         Five Minutes             */
22197c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
22207c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
22217c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
22227c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
22237c478bd9Sstevel@tonic-gate     MINUTES(70)               /* .erase_timeout      One Hour and ten Minutes */
22247c478bd9Sstevel@tonic-gate   },
22257c478bd9Sstevel@tonic-gate 
22265988135dSrralphs   /*
22275988135dSrralphs    * Sony SAIT
22285988135dSrralphs    *
22295988135dSrralphs    * Only looking at part of the product ID so it will match SDZ-100 and
22305988135dSrralphs    * SDZ-130. One is SCSI other is Fibre but same configuration otherwise.
22315988135dSrralphs    *
22325988135dSrralphs    */
22335988135dSrralphs   {                           /* Structure member Description                 */
22345988135dSrralphs                               /* ---------------- -----------                 */
22355988135dSrralphs     "Sony Super AIT",         /* .name            Display ("pretty") name     */
22365988135dSrralphs     13,                       /* .length          Length of next item...      */
22375988135dSrralphs     "SONY    SDZ-1*",         /* .vid             Vendor-product ID string    */
22385988135dSrralphs     ST_TYPE_AIT,              /* .type            Numeric type (cf. mtio.h)   */
22395988135dSrralphs     0,
22405988135dSrralphs     ST_VARIABLE         |     /*  0000001           Supports variable length  */
22415988135dSrralphs     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
22425988135dSrralphs     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
22435988135dSrralphs     ST_AUTODEN_OVERRIDE |     /*  0000040           Suports only one density  */
22445988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200           Knows End Of Data         */
22455988135dSrralphs     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
22465988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
22475988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000           mode select compression   */
22485988135dSrralphs     ST_WORMABLE,              /*  1000000           Drive is WORM capable     */
22495988135dSrralphs                               /*  -------                                     */
22505988135dSrralphs                               /*  1018659                                     */
22515988135dSrralphs     -1,                       /* .max_rretries    Not used                    */
22525988135dSrralphs     -1,                       /* .max_wretries    Not used                    */
22535988135dSrralphs     {0x40, 0x40, 0x40, 0x40}, /* .densities       Density codes [Note 1]      */
22545988135dSrralphs     MT_DENSITY4,              /* .default_density (.densities[x])             */
22555988135dSrralphs     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
22565988135dSrralphs     0,                        /* .non_motion_timeout Nothing special          */
22575988135dSrralphs     0,                        /* .io_timeout Four    Nothing Special          */
22585988135dSrralphs     0,                        /* .rewind_timeout     Nothing Special          */
22595988135dSrralphs     0,                        /* .space_timeout      Nothing Special          */
22605988135dSrralphs     0,                        /* .load_timeout       Nothing Special          */
22615988135dSrralphs     0,                        /* .unload_timeout     Nothing Special          */
22625988135dSrralphs     0,                        /* .erase_timeout      Six hours                */
22635988135dSrralphs   },
22645988135dSrralphs 
22655988135dSrralphs   /*
22665988135dSrralphs    * Sony SDX-420
22675988135dSrralphs    * This drive is listed before the more generic AIT drives becouse it runs
22685988135dSrralphs    * only in fixed block mode. It also responds to READ BLOCK LIMITS which
22695988135dSrralphs    * leads st to beleive its a variable block capable but it will fail any
22705988135dSrralphs    * i/o that doesn't have the fix bit set in the CDB.
22715988135dSrralphs    */
22725988135dSrralphs   {                           /* Structure member Description                 */
22735988135dSrralphs                               /* ---------------- -----------                 */
22745988135dSrralphs     "Sony AIT II",            /* .name            Display ("pretty") name     */
22755988135dSrralphs     15,                       /* .length          Length of next item...      */
22765988135dSrralphs     "SONY    SDX-420*",       /* .vid             Vendor-product ID string    */
22775988135dSrralphs     ST_TYPE_AIT,              /* .type            Numeric type (cf. mtio.h)   */
22785988135dSrralphs     512,
22795988135dSrralphs     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
22805988135dSrralphs     ST_BSR              |     /*    00010           Supports SPACE block rev  */
22815988135dSrralphs     ST_AUTODEN_OVERRIDE |     /*    00040           One density code          */
22825988135dSrralphs     ST_KNOWS_EOD        |     /*    00200           Knows End Of Data         */
22835988135dSrralphs     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
22845988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
22855988135dSrralphs     ST_MODE_SEL_COMP,         /*    10000           mode select compression   */
22865988135dSrralphs                               /*    -----                                     */
22875988135dSrralphs                               /*    18658                                     */
22885988135dSrralphs     -1,                       /* .max_rretries    Not used                    */
22895988135dSrralphs     -1,                       /* .max_wretries    Not used                    */
22905988135dSrralphs     {0x30, 0x30, 0x30, 0x30}, /* .densities       Density codes [Note 1]      */
22915988135dSrralphs     MT_DENSITY4,              /* .default_density (.densities[x])             */
22925988135dSrralphs     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
22935988135dSrralphs     0,                        /* .non_motion_timeout Nothing special          */
22945988135dSrralphs     0,                        /* .io_timeout Four    Nothing Special          */
22955988135dSrralphs     0,                        /* .rewind_timeout     Nothing Special          */
22965988135dSrralphs     0,                        /* .space_timeout      Nothing Special          */
22975988135dSrralphs     0,                        /* .load_timeout       Nothing Special          */
22985988135dSrralphs     0,                        /* .unload_timeout     Nothing Special          */
22995988135dSrralphs     0,                        /* .erase_timeout      Six hours                */
23005988135dSrralphs   },
23015988135dSrralphs 
23025988135dSrralphs   /*
23035988135dSrralphs    * Sony SDX-520
23045988135dSrralphs    * This drive is listed before the more generic AIT drives becouse it runs
23055988135dSrralphs    * only in fixed block mode. It also responds to READ BLOCK LIMITS which
23065988135dSrralphs    * leads st to beleive its a variable block capable but it will fail any
23075988135dSrralphs    * i/o that doesn't have the fix bit set in the CDB.
23085988135dSrralphs    */
23095988135dSrralphs   {                           /* Structure member Description                 */
23105988135dSrralphs                               /* ---------------- -----------                 */
23115988135dSrralphs     "Sony AIT II",            /* .name            Display ("pretty") name     */
23125988135dSrralphs     15,                       /* .length          Length of next item...      */
23135988135dSrralphs     "SONY    SDX-520*",       /* .vid             Vendor-product ID string    */
23145988135dSrralphs     ST_TYPE_AIT,              /* .type            Numeric type (cf. mtio.h)   */
23155988135dSrralphs     512,
23165988135dSrralphs     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
23175988135dSrralphs     ST_BSR              |     /*    00010           Supports SPACE block rev  */
23185988135dSrralphs     ST_AUTODEN_OVERRIDE |     /*    00040           One density code          */
23195988135dSrralphs     ST_KNOWS_EOD        |     /*    00200           Knows End Of Data         */
23205988135dSrralphs     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
23215988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
23225988135dSrralphs     ST_MODE_SEL_COMP,         /*    10000           mode select compression   */
23235988135dSrralphs                               /*    -----                                     */
23245988135dSrralphs                               /*    18658                                     */
23255988135dSrralphs     -1,                       /* .max_rretries    Not used                    */
23265988135dSrralphs     -1,                       /* .max_wretries    Not used                    */
23275988135dSrralphs     {0x30, 0x30, 0x30, 0x30}, /* .densities       Density codes [Note 1]      */
23285988135dSrralphs     MT_DENSITY4,              /* .default_density (.densities[x])             */
23295988135dSrralphs     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
23305988135dSrralphs     0,                        /* .non_motion_timeout Nothing special          */
23315988135dSrralphs     0,                        /* .io_timeout Four    Nothing Special          */
23325988135dSrralphs     0,                        /* .rewind_timeout     Nothing Special          */
23335988135dSrralphs     0,                        /* .space_timeout      Nothing Special          */
23345988135dSrralphs     0,                        /* .load_timeout       Nothing Special          */
23355988135dSrralphs     0,                        /* .unload_timeout     Nothing Special          */
23365988135dSrralphs     0,                        /* .erase_timeout      Six hours                */
23375988135dSrralphs   },
23385988135dSrralphs 
23395988135dSrralphs   /* Sony generic AIT
23405988135dSrralphs    *
23415988135dSrralphs    *
23425988135dSrralphs    */
23435988135dSrralphs   {                           /* Structure member Description                 */
23445988135dSrralphs                               /* ---------------- -----------                 */
23455988135dSrralphs     "Sony AIT",               /* .name            Display ("pretty") name     */
23465988135dSrralphs     12,                       /* .length          Length of next item...      */
23475988135dSrralphs     "SONY    SDX-*",          /* .vid             Vendor-product ID string    */
23485988135dSrralphs     ST_TYPE_AIT,              /* .type            Numeric type (cf. mtio.h)   */
23495988135dSrralphs     0,
23505988135dSrralphs     ST_VARIABLE         |     /*  0000001           Supports variable length  */
23515988135dSrralphs     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
23525988135dSrralphs     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
23535988135dSrralphs     ST_AUTODEN_OVERRIDE |     /*  0000040           One density code          */
23545988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200           Knows End Of Data         */
23555988135dSrralphs     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
23565988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
23575988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000           mode select compression   */
23585988135dSrralphs     ST_WORMABLE,              /*  1000000           Drive is WORM capable     */
23595988135dSrralphs                               /*  -------                                     */
23605988135dSrralphs                               /*  1018659                                     */
23615988135dSrralphs     -1,                       /* .max_rretries    Not used                    */
23625988135dSrralphs     -1,                       /* .max_wretries    Not used                    */
23635988135dSrralphs     {0x30, 0x30, 0x30, 0x30}, /* .densities       Density codes [Note 1]      */
23645988135dSrralphs     MT_DENSITY4,              /* .default_density (.densities[x])             */
23655988135dSrralphs     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
23665988135dSrralphs     0,                        /* .non_motion_timeout Nothing special          */
23675988135dSrralphs     0,                        /* .io_timeout Four    Nothing Special          */
23685988135dSrralphs     0,                        /* .rewind_timeout     Nothing Special          */
23695988135dSrralphs     0,                        /* .space_timeout      Nothing Special          */
23705988135dSrralphs     0,                        /* .load_timeout       Nothing Special          */
23715988135dSrralphs     0,                        /* .unload_timeout     Nothing Special          */
23725988135dSrralphs     0,                        /* .erase_timeout      Six hours                */
23735988135dSrralphs   },
23745988135dSrralphs 
23757c478bd9Sstevel@tonic-gate   /*
23767c478bd9Sstevel@tonic-gate    * Sun DLT7000
23777c478bd9Sstevel@tonic-gate    *
23787c478bd9Sstevel@tonic-gate    *     NOTES
23797c478bd9Sstevel@tonic-gate    *     -----
23807c478bd9Sstevel@tonic-gate    * [1] The DLT7000 implements many tape formats, but the st driver supports
23817c478bd9Sstevel@tonic-gate    *     only the four highest densities.
23827c478bd9Sstevel@tonic-gate    * [2] The DLT7000 has only one speed (if the driver ever cares).
23837c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
23847c478bd9Sstevel@tonic-gate    * [4] Data is buffered in the driver and pre-acked to the application. This
23857c478bd9Sstevel@tonic-gate    *     is only supported in 2.5.1.
23867c478bd9Sstevel@tonic-gate    */
23877c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
23887c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
23897c478bd9Sstevel@tonic-gate     "Sun DLT7000",            /* .name            Display ("pretty") name     */
23907c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
23917c478bd9Sstevel@tonic-gate     "SUN     DLT7000",        /* .vid             Vendor-product ID string    */
23927c478bd9Sstevel@tonic-gate     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
23937c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
23947c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
23957c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
23967c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
23977c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
23987c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
23997c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
24007c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS    |     /*    01000           More time for some ops    */
24017c478bd9Sstevel@tonic-gate     ST_BUFFERED_WRITES  |     /*    04000           [Note 4]                  */
24027c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
24037c478bd9Sstevel@tonic-gate     ST_CLN_TYPE_3,            /* 40000000         Asks to be cleaned this way */
24047c478bd9Sstevel@tonic-gate                               /* --------                                     */
24057c478bd9Sstevel@tonic-gate                               /* 4000D619                                     */
24067c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
24077c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
24087c478bd9Sstevel@tonic-gate     {0x82, 0x83, 0x84, 0x85}, /* .densities       Density codes [Note 1]      */
24097c478bd9Sstevel@tonic-gate     MT_DENSITY3,              /* .default_density (.densities[x])             */
24107c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
24117c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing special          */
24127c478bd9Sstevel@tonic-gate     0,                        /* .io_timeout Four    Nothing Special          */
24137c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
24147c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
24157c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
24167c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
24177c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
24187c478bd9Sstevel@tonic-gate   },
24197c478bd9Sstevel@tonic-gate 
24207c478bd9Sstevel@tonic-gate   /*
24217c478bd9Sstevel@tonic-gate    * Sun DLT4000
24227c478bd9Sstevel@tonic-gate    *
24237c478bd9Sstevel@tonic-gate    *     NOTES
24247c478bd9Sstevel@tonic-gate    *     -----
24257c478bd9Sstevel@tonic-gate    * [1] The DLT4000 implements many tape formats, but the st driver supports
24267c478bd9Sstevel@tonic-gate    *     only the four highest densities.
24277c478bd9Sstevel@tonic-gate    * [2] The DLT4000 has only one speed (if the driver ever cares).
24287c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
24297c478bd9Sstevel@tonic-gate    * [4] Data is buffered in the driver and pre-acked to the application. This
24307c478bd9Sstevel@tonic-gate    *     is only supported in 2.5.1.
24317c478bd9Sstevel@tonic-gate    */
24327c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
24337c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
24347c478bd9Sstevel@tonic-gate     "DLT4000",                /* .name            Display ("pretty") name     */
24357c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
24367c478bd9Sstevel@tonic-gate     "SUN     DLT4000",        /* .vid             Vendor-product ID string    */
24377c478bd9Sstevel@tonic-gate     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
24387c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
24397c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
24407c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
24417c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
24427c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
24437c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
24447c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
24457c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
24467c478bd9Sstevel@tonic-gate     ST_BUFFERED_WRITES |      /*    04000           [Note 4]                  */
24477c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT|      /*    08000           Supports blocks > 64KB    */
24487c478bd9Sstevel@tonic-gate     ST_CLN_TYPE_3,            /* 40000000         Asks to be cleaned this way */
24497c478bd9Sstevel@tonic-gate                               /* --------                                     */
24507c478bd9Sstevel@tonic-gate                               /* 4000D619                                     */
24517c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
24527c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
24537c478bd9Sstevel@tonic-gate     {0x80, 0x81, 0x82, 0x83}, /* .densities       Density codes [Note 1]      */
24547c478bd9Sstevel@tonic-gate     MT_DENSITY3,              /* .default_density (.densities[x])             */
24557c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
24567c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing special          */
24577c478bd9Sstevel@tonic-gate     0,                        /* .io_timeout Four    Nothing Special          */
24587c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
24597c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
24607c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
24617c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
24627c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
24637c478bd9Sstevel@tonic-gate   },
24647c478bd9Sstevel@tonic-gate 
24657c478bd9Sstevel@tonic-gate   /*
24667c478bd9Sstevel@tonic-gate    * Sun DLT4700
24677c478bd9Sstevel@tonic-gate    *
24687c478bd9Sstevel@tonic-gate    *     NOTES
24697c478bd9Sstevel@tonic-gate    *     -----
24707c478bd9Sstevel@tonic-gate    * [1] Compression on the DLT4700 is controlled via the Device Configuration
24717c478bd9Sstevel@tonic-gate    *     mode page or the Data Compression page (either one).
24727c478bd9Sstevel@tonic-gate    * [2] The DLT4700 implements many tape formats, but the st driver supports
24737c478bd9Sstevel@tonic-gate    *     only the four highest densities.
24747c478bd9Sstevel@tonic-gate    * [3] The DLT4700 has only one speed (if the driver ever cares).
24757c478bd9Sstevel@tonic-gate    * [4] max_rretries and max_wretries are driver anachronisms.
24767c478bd9Sstevel@tonic-gate    * [5] Data is buffered in the driver and pre-acked to the application. This
24777c478bd9Sstevel@tonic-gate    *     is only supported in 2.5.1.
24787c478bd9Sstevel@tonic-gate    */
24797c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
24807c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
24817c478bd9Sstevel@tonic-gate     "DLT4700 Library",        /* .name            Display ("pretty") name     */
24827c478bd9Sstevel@tonic-gate     15,                       /* .length          Length of next item...      */
24837c478bd9Sstevel@tonic-gate     "SUN     DLT4700",        /* .vid             Vendor-product ID string    */
24847c478bd9Sstevel@tonic-gate     ST_TYPE_DLT,              /* .type            Numeric type (cf. mtio.h)   */
24857c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
24867c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
24877c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
24887c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
24897c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
24907c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
24917c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
24927c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
24937c478bd9Sstevel@tonic-gate     ST_BUFFERED_WRITES |      /*    04000           [Note 5]                  */
24947c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
24957c478bd9Sstevel@tonic-gate                               /*    -----                                     */
24967c478bd9Sstevel@tonic-gate                               /*    0D619                                     */
24977c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 4]                    */
24987c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 4]                    */
24997c478bd9Sstevel@tonic-gate     {0x80, 0x81, 0x82, 0x83}, /* .densities       Density codes [Note 2]      */
25007c478bd9Sstevel@tonic-gate     MT_DENSITY3,              /* .default_density (.densities[x])             */
25017c478bd9Sstevel@tonic-gate     { 0, 0, 0, 0 },           /* .speeds          Speed codes [Note 2]        */
25027c478bd9Sstevel@tonic-gate     0,                        /* .non_motion_timeout Nothing special          */
25037c478bd9Sstevel@tonic-gate     0,                        /* .io_timeout Four    Nothing Special          */
25047c478bd9Sstevel@tonic-gate     0,                        /* .rewind_timeout     Nothing Special          */
25057c478bd9Sstevel@tonic-gate     0,                        /* .space_timeout      Nothing Special          */
25067c478bd9Sstevel@tonic-gate     0,                        /* .load_timeout       Nothing Special          */
25077c478bd9Sstevel@tonic-gate     0,                        /* .unload_timeout     Nothing Special          */
25087c478bd9Sstevel@tonic-gate     MINUTES(360)              /* .erase_timeout      Six hours                */
25097c478bd9Sstevel@tonic-gate   },
25107c478bd9Sstevel@tonic-gate 
25117c478bd9Sstevel@tonic-gate   /*
25127c478bd9Sstevel@tonic-gate    * Tandberg SLR5 4/8G (standard firmware)
25137c478bd9Sstevel@tonic-gate    *
25147c478bd9Sstevel@tonic-gate    *     NOTES
25157c478bd9Sstevel@tonic-gate    *     -----
25167c478bd9Sstevel@tonic-gate    * [1] The density code entry requires four values, even if there are less
25177c478bd9Sstevel@tonic-gate    *     than four values for the drive.
25187c478bd9Sstevel@tonic-gate    * [2] The Tandberg SLR5 4/8G has only one speed (if the driver ever cares).
25197c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
25207c478bd9Sstevel@tonic-gate    */
25217c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
25227c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
25237c478bd9Sstevel@tonic-gate     "Tandberg 4/8 Gig QIC",   /* .name            Display ("pretty") name     */
25247c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
25257c478bd9Sstevel@tonic-gate     "TANDBERG SLR5 4/8GB",    /* .vid             Vendor-product ID string    */
25267c478bd9Sstevel@tonic-gate     ST_TYPE_TAND25G,          /* .type            Numeric type (cf. mtio.h)   */
25277c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
25287c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
25297c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
25307c478bd9Sstevel@tonic-gate     ST_QIC             |      /*    00002           QIC tape device           */
25317c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
25327c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
25337c478bd9Sstevel@tonic-gate     ST_LONG_ERASE      |      /*    00020           Needs extra time to erase */
25347c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
25357c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
25367c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
25377c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
25387c478bd9Sstevel@tonic-gate                               /*    -----                                     */
25397c478bd9Sstevel@tonic-gate                               /*    0963B                                     */
25407c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
25417c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
25427c478bd9Sstevel@tonic-gate     {0x22, 0x22, 0x26, 0x26}, /* .densities       Density codes [Note 1]      */
25437c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
25447c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
25457c478bd9Sstevel@tonic-gate   },
25467c478bd9Sstevel@tonic-gate 
25477c478bd9Sstevel@tonic-gate   /*
25487c478bd9Sstevel@tonic-gate    * Tandberg SLR5 (SMI firmware).
25497c478bd9Sstevel@tonic-gate    *
25507c478bd9Sstevel@tonic-gate    *     NOTES
25517c478bd9Sstevel@tonic-gate    *     -----
25527c478bd9Sstevel@tonic-gate    *  o The inquiry string for this drive is actually padded with blanks, but
25537c478bd9Sstevel@tonic-gate    *    we only check the first 13 characters so that this will act as a default
25547c478bd9Sstevel@tonic-gate    *    to cover other revisions of firmware on SLR5s which may show up.
25557c478bd9Sstevel@tonic-gate    *
25567c478bd9Sstevel@tonic-gate    * [1] The density code entry requires four values, even if there are less
25577c478bd9Sstevel@tonic-gate    *     than four values for the drive.
25587c478bd9Sstevel@tonic-gate    * [2] The Tandberg SLR5 has only one speed (if the driver ever cares).
25597c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
25607c478bd9Sstevel@tonic-gate    */
25617c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
25627c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
25637c478bd9Sstevel@tonic-gate     "Tandberg 8 Gig QIC",     /* .name            Display ("pretty") name     */
25647c478bd9Sstevel@tonic-gate     13,                       /* .length          Length of next item...      */
25657c478bd9Sstevel@tonic-gate     "TANDBERG SLR5",          /* .vid             Vendor-product ID string    */
25667c478bd9Sstevel@tonic-gate     ST_TYPE_TAND25G,          /* .type            Numeric type (cf. mtio.h)   */
25677c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
25687c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
25697c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
25707c478bd9Sstevel@tonic-gate     ST_QIC             |      /*    00002           QIC tape device           */
25717c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
25727c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
25737c478bd9Sstevel@tonic-gate     ST_LONG_ERASE      |      /*    00020           Needs extra time to erase */
25747c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
25757c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
25767c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
25777c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
25787c478bd9Sstevel@tonic-gate                               /*    -----                                     */
25797c478bd9Sstevel@tonic-gate                               /*    0963B                                     */
25807c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
25817c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
25827c478bd9Sstevel@tonic-gate     {0xA0, 0xD0, 0xD0, 0xD0}, /* .densities       Density codes [Note 1]      */
25837c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
25847c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
25857c478bd9Sstevel@tonic-gate   },
25867c478bd9Sstevel@tonic-gate 
25877c478bd9Sstevel@tonic-gate   /*
25887c478bd9Sstevel@tonic-gate    * Tandberg 4100 QIC
25897c478bd9Sstevel@tonic-gate    *
25907c478bd9Sstevel@tonic-gate    *     NOTES
25917c478bd9Sstevel@tonic-gate    *     -----
25927c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
25937c478bd9Sstevel@tonic-gate    *
25947c478bd9Sstevel@tonic-gate    * [1] The Tandberg 4100 uses 0 or the "default" density code.
25957c478bd9Sstevel@tonic-gate    * [2] The Tandberg 4100 has only one speed (if the driver ever cares).
25967c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
25977c478bd9Sstevel@tonic-gate    */
25987c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
25997c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
26007c478bd9Sstevel@tonic-gate     "Tandberg 4100 QIC",      /* .name            Display ("pretty") name     */
26017c478bd9Sstevel@tonic-gate     13,                       /* .length          Length of next item...      */
26027c478bd9Sstevel@tonic-gate     "TANDBERG 4100",          /* .vid             Vendor-product ID string    */
26037c478bd9Sstevel@tonic-gate     MT_ISQIC,                 /* .type            Numeric type (cf. mtio.h)   */
26047c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
26057c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
26067c478bd9Sstevel@tonic-gate     ST_QIC        |           /*    00002           QIC tape device           */
26077c478bd9Sstevel@tonic-gate     ST_BSF        |           /*    00008           Supports SPACE block fwd  */
26087c478bd9Sstevel@tonic-gate     ST_BSR        |           /*    00010           Supports SPACE block rev  */
26097c478bd9Sstevel@tonic-gate     ST_LONG_ERASE |           /*    00020           Needs extra time to erase */
26107c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD  |           /*    00200           Recognizes end-of-data    */
26117c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
26127c478bd9Sstevel@tonic-gate                               /*    -----                                     */
26137c478bd9Sstevel@tonic-gate                               /*    0063A                                     */
26147c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
26157c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
26167c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
26177c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
26187c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
26197c478bd9Sstevel@tonic-gate   },
26207c478bd9Sstevel@tonic-gate 
26217c478bd9Sstevel@tonic-gate   /*
26227c478bd9Sstevel@tonic-gate    * Tandberg 4200 QIC
26237c478bd9Sstevel@tonic-gate    *
26247c478bd9Sstevel@tonic-gate    *     NOTES
26257c478bd9Sstevel@tonic-gate    *     -----
26267c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
26277c478bd9Sstevel@tonic-gate    *
26287c478bd9Sstevel@tonic-gate    * [1] The Tandberg 4200 uses 0 or the "default" density code.
26297c478bd9Sstevel@tonic-gate    * [2] The Tandberg 4200 has only one speed (if the driver ever cares).
26307c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
26317c478bd9Sstevel@tonic-gate    */
26327c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
26337c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
26347c478bd9Sstevel@tonic-gate     "Tandberg 4200 QIC",      /* .name            Display ("pretty") name     */
26357c478bd9Sstevel@tonic-gate     13,                       /* .length          Length of next item...      */
26367c478bd9Sstevel@tonic-gate     "TANDBERG 4200",          /* .vid             Vendor-product ID string    */
26377c478bd9Sstevel@tonic-gate     MT_ISQIC,                 /* .type            Numeric type (cf. mtio.h)   */
26387c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
26397c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
26407c478bd9Sstevel@tonic-gate     ST_QIC        |           /*    00002           QIC tape device           */
26417c478bd9Sstevel@tonic-gate     ST_BSF        |           /*    00008           Supports SPACE block fwd  */
26427c478bd9Sstevel@tonic-gate     ST_BSR        |           /*    00010           Supports SPACE block rev  */
26437c478bd9Sstevel@tonic-gate     ST_LONG_ERASE |           /*    00020           Needs extra time to erase */
26447c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD  |           /*    00200           Recognizes end-of-data    */
26457c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
26467c478bd9Sstevel@tonic-gate                               /*    -----                                     */
26477c478bd9Sstevel@tonic-gate                               /*    0063A                                     */
26487c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
26497c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
26507c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
26517c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
26527c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
26537c478bd9Sstevel@tonic-gate   },
26547c478bd9Sstevel@tonic-gate 
26557c478bd9Sstevel@tonic-gate   /*
26567c478bd9Sstevel@tonic-gate    * Tandberg QIC 2.5 Gig Tape Drive
26577c478bd9Sstevel@tonic-gate    *
26587c478bd9Sstevel@tonic-gate    *     NOTES
26597c478bd9Sstevel@tonic-gate    *     -----
26607c478bd9Sstevel@tonic-gate    * [1] The TDC 4200 uses 0 or the "default" density code.
26617c478bd9Sstevel@tonic-gate    * [2] The TDC 4200 has only one speed (if the driver ever cares).
26627c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
26637c478bd9Sstevel@tonic-gate    * [4] Data is buffered in the driver and pre-acked to the application. This
26647c478bd9Sstevel@tonic-gate    *     is only supported in 2.5.1.
26657c478bd9Sstevel@tonic-gate    */
26667c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
26677c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
26687c478bd9Sstevel@tonic-gate     "Tandberg QIC 2.5 Gig Tape Drive",
26697c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
26707c478bd9Sstevel@tonic-gate     16,                       /* .length          Length of next item...      */
26717c478bd9Sstevel@tonic-gate     "TANDBERG TDC 420*",      /* .vid             Vendor-product ID string    */
26727c478bd9Sstevel@tonic-gate     MT_ISQIC,                 /* .type            Numeric type (cf. mtio.h)   */
26737c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
26747c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
26757c478bd9Sstevel@tonic-gate     ST_VARIABLE          |    /*    00001           Supports variable length  */
26767c478bd9Sstevel@tonic-gate     ST_QIC               |    /*    00002           QIC tape device           */
26777c478bd9Sstevel@tonic-gate     ST_BSF               |    /*    00008           Supports SPACE block fwd  */
26787c478bd9Sstevel@tonic-gate     ST_BSR               |    /*    00010           Supports SPACE block rev  */
26797c478bd9Sstevel@tonic-gate     ST_LONG_ERASE        |    /*    00020           Needs extra time to erase */
26807c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE  |    /*    00040           Autodensity override flag */
26817c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD         |    /*    00200           Recognizes end-of-data    */
26827c478bd9Sstevel@tonic-gate     ST_UNLOADABLE        |    /*    00400           Driver can be unloaded    */
26837c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS     |    /*    01000           More time for some ops    */
26847c478bd9Sstevel@tonic-gate     ST_BUFFERED_WRITES   |    /*    04000           [Note 4]                  */
26857c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
26867c478bd9Sstevel@tonic-gate                               /*    -----                                     */
26877c478bd9Sstevel@tonic-gate                               /*    0D67B                                     */
26887c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
26897c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
26907c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
26917c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density (.densities[x])             */
26927c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
26937c478bd9Sstevel@tonic-gate   },
26947c478bd9Sstevel@tonic-gate 
26957c478bd9Sstevel@tonic-gate   /*
26967c478bd9Sstevel@tonic-gate    * Tandberg MLR1 QIC
26977c478bd9Sstevel@tonic-gate    *
26987c478bd9Sstevel@tonic-gate    *     NOTES
26997c478bd9Sstevel@tonic-gate    *     -----
27007c478bd9Sstevel@tonic-gate    * [1] The MLR1 uses 0 or the "default" density code.
27017c478bd9Sstevel@tonic-gate    * [2] The MLR1 has only one speed (if the driver ever cares).
27027c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
27037c478bd9Sstevel@tonic-gate    * [4] Data is buffered in the driver and pre-acked to the application. This
27047c478bd9Sstevel@tonic-gate    *     is only supported in 2.5.1.
27057c478bd9Sstevel@tonic-gate    */
27067c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
27077c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
27087c478bd9Sstevel@tonic-gate     "Tandberg MLR1 QIC",      /* .name            Display ("pretty") name     */
27097c478bd9Sstevel@tonic-gate     12,                       /* .length          Length of next item...      */
27107c478bd9Sstevel@tonic-gate     "TANDBERGMLR1",           /* .vid             Vendor-product ID string    */
27117c478bd9Sstevel@tonic-gate     MT_ISQIC,                 /* .type            Numeric type (cf. mtio.h)   */
27127c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
27137c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
27147c478bd9Sstevel@tonic-gate     ST_QIC            |       /*    00002         QIC tape device             */
27157c478bd9Sstevel@tonic-gate     ST_BSF            |       /*    00008         Supports SPACE block fwd    */
27167c478bd9Sstevel@tonic-gate     ST_BSR            |       /*    00010         Supports SPACE block rev    */
27177c478bd9Sstevel@tonic-gate     ST_LONG_ERASE     |       /*    00020         Needs extra time to erase   */
27187c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD      |       /*    00200         Recognizes end-of-data      */
27197c478bd9Sstevel@tonic-gate     ST_UNLOADABLE     |       /*    00400         Driver can be unloaded      */
27207c478bd9Sstevel@tonic-gate     ST_BUFFERED_WRITES,       /*    04000         [Note 4]                    */
27217c478bd9Sstevel@tonic-gate                               /*    -----                                     */
27227c478bd9Sstevel@tonic-gate                               /*    0463A                                     */
27237c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
27247c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
27257c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
27267c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density (.densities[x])             */
27277c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
27287c478bd9Sstevel@tonic-gate   },
27297c478bd9Sstevel@tonic-gate 
27307c478bd9Sstevel@tonic-gate   /*
27317c478bd9Sstevel@tonic-gate    * Tandberg MLR3 QIC
27327c478bd9Sstevel@tonic-gate    *
27337c478bd9Sstevel@tonic-gate    *     NOTES
27347c478bd9Sstevel@tonic-gate    *     -----
27357c478bd9Sstevel@tonic-gate    * [1] The density code entry requires four values, even if there are less
27367c478bd9Sstevel@tonic-gate    *     than four values for the drive.
27377c478bd9Sstevel@tonic-gate    * [2] The MLR3 has only one speed (if the driver ever cares).
27387c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
27397c478bd9Sstevel@tonic-gate    */
27407c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
27417c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
27427c478bd9Sstevel@tonic-gate     "Tandberg 50 Gig QIC",    /* .name            Display ("pretty") name     */
27437c478bd9Sstevel@tonic-gate     12,                       /* .length          Length of next item...      */
27447c478bd9Sstevel@tonic-gate     "TANDBERGMLR3",           /* .vid             Vendor-product ID string    */
27457c478bd9Sstevel@tonic-gate     MT_ISTAND25G,             /* .type            Numeric type (cf. mtio.h)   */
27467c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
27477c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
27487c478bd9Sstevel@tonic-gate     ST_VARIABLE        |      /*    00001           Supports variable length  */
27497c478bd9Sstevel@tonic-gate     ST_QIC             |      /*    00002           QIC tape device           */
27507c478bd9Sstevel@tonic-gate     ST_BSF             |      /*    00008           Supports SPACE block fwd  */
27517c478bd9Sstevel@tonic-gate     ST_BSR             |      /*    00010           Supports SPACE block rev  */
27527c478bd9Sstevel@tonic-gate     ST_LONG_ERASE      |      /*    00020           Needs extra time to erase */
27537c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD       |      /*    00200           Recognizes end-of-data    */
27547c478bd9Sstevel@tonic-gate     ST_UNLOADABLE      |      /*    00400           Driver can be unloaded    */
27557c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS   |      /*    01000           More time for some ops    */
27567c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT,      /*    08000           Supports blocks > 64KB    */
27577c478bd9Sstevel@tonic-gate                               /*    -----                                     */
27587c478bd9Sstevel@tonic-gate                               /*    0963B                                     */
27597c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
27607c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
27617c478bd9Sstevel@tonic-gate     {0xA0, 0xD0, 0xD0, 0xD0}, /* .densities       Density codes [Note 1]      */
27627c478bd9Sstevel@tonic-gate     MT_DENSITY3,              /* .default_density (.densities[x])             */
27637c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
27647c478bd9Sstevel@tonic-gate   },
27657c478bd9Sstevel@tonic-gate 
27667c478bd9Sstevel@tonic-gate   /*
27677c478bd9Sstevel@tonic-gate    * WangDAT 3.81mm cartridge
27687c478bd9Sstevel@tonic-gate    *
27697c478bd9Sstevel@tonic-gate    *     NOTES
27707c478bd9Sstevel@tonic-gate    *     -----
27717c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
27727c478bd9Sstevel@tonic-gate    *
27737c478bd9Sstevel@tonic-gate    * [1] The WangDAT 3.81mm uses 0 or the "default" density code.
27747c478bd9Sstevel@tonic-gate    * [2] The WangDAT 3.81mm has only one speed (if the driver ever cares).
27757c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
27767c478bd9Sstevel@tonic-gate    */
27777c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
27787c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
27797c478bd9Sstevel@tonic-gate     "Wang DAT 3.81 Helical Scan",
27807c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
27817c478bd9Sstevel@tonic-gate     7,                        /* .length          Length of next item...      */
27827c478bd9Sstevel@tonic-gate     "WangDAT",                /* .vid             Vendor-product ID string    */
27837c478bd9Sstevel@tonic-gate     ST_TYPE_WANGDAT,          /* .type            Numeric type (cf. mtio.h)   */
27847c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
27857c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
27867c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
27877c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
27887c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
27897c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040           Autodensity override flag */
27907c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
27917c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
27927c478bd9Sstevel@tonic-gate                               /*    -----                                     */
27937c478bd9Sstevel@tonic-gate                               /*    00659                                     */
27947c478bd9Sstevel@tonic-gate     5000,                     /* .max_rretries    [Note 3]                    */
27957c478bd9Sstevel@tonic-gate     5000,                     /* .max_wretries    [Note 3]                    */
27967c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
27977c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
27987c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
27997c478bd9Sstevel@tonic-gate   },
28007c478bd9Sstevel@tonic-gate 
28017c478bd9Sstevel@tonic-gate   /*
28027c478bd9Sstevel@tonic-gate    * Wangtek QIC-150 1/4" cartridge
28037c478bd9Sstevel@tonic-gate    *
28047c478bd9Sstevel@tonic-gate    *     NOTES
28057c478bd9Sstevel@tonic-gate    *     -----
28067c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
28077c478bd9Sstevel@tonic-gate    *
28087c478bd9Sstevel@tonic-gate    * [1] The Wangtek QIC-150 uses 0 or the "default" density code.
28097c478bd9Sstevel@tonic-gate    * [2] The Wangtek QIC-150 has only one speed (if the driver ever cares).
28107c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
28117c478bd9Sstevel@tonic-gate    */
28127c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
28137c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
28147c478bd9Sstevel@tonic-gate     "Wangtek QIC-150",        /* .name            Display ("pretty") name     */
28157c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
28167c478bd9Sstevel@tonic-gate     "WANGTEK 5150ES",         /* .vid             Vendor-product ID string    */
28177c478bd9Sstevel@tonic-gate     ST_TYPE_WANGTEK,          /* .type            Numeric type (cf. mtio.h)   */
28187c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
28197c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
28207c478bd9Sstevel@tonic-gate     ST_QIC              |     /*    00002           QIC tape device           */
28217c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040           Autodensity override flag */
28227c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
28237c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
28247c478bd9Sstevel@tonic-gate                               /*    -----                                     */
28257c478bd9Sstevel@tonic-gate                               /*    00642                                     */
28267c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
28277c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
28287c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
28297c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
28307c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
28317c478bd9Sstevel@tonic-gate   },
28327c478bd9Sstevel@tonic-gate 
28337c478bd9Sstevel@tonic-gate   /*
28347c478bd9Sstevel@tonic-gate    * Wangtek 4mm RDAT drive
28357c478bd9Sstevel@tonic-gate    *
28367c478bd9Sstevel@tonic-gate    *     NOTES
28377c478bd9Sstevel@tonic-gate    *     -----
28387c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
28397c478bd9Sstevel@tonic-gate    *
28407c478bd9Sstevel@tonic-gate    *  o This entry uses a shortened Vendor-product ID string for the
2841*55fea89dSDan Cross    *    INQUIRY match.
28427c478bd9Sstevel@tonic-gate    *
28437c478bd9Sstevel@tonic-gate    * [1] The Wangtek 4mm RDAT uses 0 or the "default" density code.
28447c478bd9Sstevel@tonic-gate    * [2] The Wangtek 4mm RDAT has only one speed (if the driver ever cares).
28457c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
28467c478bd9Sstevel@tonic-gate    */
28477c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
28487c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
28497c478bd9Sstevel@tonic-gate     "Wangtek 4mm Helical Scan",
28507c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
28517c478bd9Sstevel@tonic-gate     14,                       /* .length          Length of next item...      */
28527c478bd9Sstevel@tonic-gate     "WANGTEK 6130-H*",        /* .vid             Vendor-product ID string    */
28537c478bd9Sstevel@tonic-gate     ST_TYPE_WANGTHS,          /* .type            Numeric type (cf. mtio.h)   */
28547c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
28557c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
28567c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
28577c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
28587c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
28597c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040           Autodensity override flag */
28607c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
28617c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
28627c478bd9Sstevel@tonic-gate                               /*    -----                                     */
28637c478bd9Sstevel@tonic-gate                               /*    00659                                     */
28647c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
28657c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
28667c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
28677c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
28687c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
28697c478bd9Sstevel@tonic-gate   },
28707c478bd9Sstevel@tonic-gate 
28717c478bd9Sstevel@tonic-gate   /*
28727c478bd9Sstevel@tonic-gate    * Wangtek QIC-150 1/4" cartridge
28737c478bd9Sstevel@tonic-gate    *
28747c478bd9Sstevel@tonic-gate    *     NOTES
28757c478bd9Sstevel@tonic-gate    *     -----
28767c478bd9Sstevel@tonic-gate    *  o This is an unsupported drive.
28777c478bd9Sstevel@tonic-gate    *
28787c478bd9Sstevel@tonic-gate    * [1] The Wangtek QIC-150 uses 0 or the "default" density code.
28797c478bd9Sstevel@tonic-gate    * [2] The Wangtek QIC-150 has only one speed (if the driver ever cares).
28807c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
28817c478bd9Sstevel@tonic-gate    */
28827c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
28837c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
28847c478bd9Sstevel@tonic-gate     "Wangtek 5525ES SCSI",    /* .name            Display ("pretty") name     */
28857c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
28867c478bd9Sstevel@tonic-gate     "WANGTEK 5525ES SCSI",    /* .vid             Vendor-product ID string    */
28877c478bd9Sstevel@tonic-gate     ST_TYPE_WANGTEK,          /* .type            Numeric type (cf. mtio.h)   */
28887c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
28897c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
28907c478bd9Sstevel@tonic-gate     ST_QIC              |     /*    00002           QIC tape device           */
28917c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
28927c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
28937c478bd9Sstevel@tonic-gate     ST_LONG_ERASE       |     /*    00020           Needs extra time to erase */
28947c478bd9Sstevel@tonic-gate     ST_AUTODEN_OVERRIDE |     /*    00040           Autdensity override flag  */
28957c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
28967c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
28977c478bd9Sstevel@tonic-gate                               /*    -----                                     */
28987c478bd9Sstevel@tonic-gate                               /*    0067A                                     */
28997c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
29007c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
29017c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
29027c478bd9Sstevel@tonic-gate     MT_DENSITY2,              /* .default_density (.densities[x])             */
29037c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
29047c478bd9Sstevel@tonic-gate   },
29057c478bd9Sstevel@tonic-gate 
29067c478bd9Sstevel@tonic-gate   /*
29077c478bd9Sstevel@tonic-gate    * [1] The Ecrix VXA-1 has only one density at this time,
29087c478bd9Sstevel@tonic-gate    *     Compression is controlled via the Device Configuration
29097c478bd9Sstevel@tonic-gate    *     mode page.
29107c478bd9Sstevel@tonic-gate    * [2] The Ecrix VXA-1 is a veriable speed device. The drive determines
29117c478bd9Sstevel@tonic-gate    *     the optimum speed. (if the driver ever cares).
29127c478bd9Sstevel@tonic-gate    */
29137c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
29147c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
29157c478bd9Sstevel@tonic-gate     "Ecrix VXA-1",            /* .name            Display ("pretty") name     */
29167c478bd9Sstevel@tonic-gate     13,                       /* .length          Length of next item...      */
29177c478bd9Sstevel@tonic-gate     "ECRIX   VXA-1",          /* .vid             Vendor-product ID string    */
29187c478bd9Sstevel@tonic-gate     MT_ISOTHER,               /* .type            Numeric type (cf. mtio.h)   */
29197c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
29207c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
29217c478bd9Sstevel@tonic-gate     ST_VARIABLE             | /*    00001           Supports variable length  */
29227c478bd9Sstevel@tonic-gate     ST_BSF                  | /*    00008           Supports SPACE block fwd  */
29237c478bd9Sstevel@tonic-gate     ST_BSR                  | /*    00010           Supports SPACE block rev  */
29247c478bd9Sstevel@tonic-gate     ST_LONG_ERASE           | /*    00020           Needs extra time to erase */
29257c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD            | /*    00200           Recognizes end-of-data    */
29267c478bd9Sstevel@tonic-gate     ST_UNLOADABLE           | /*    00400           Driver can be unloaded    */
29277c478bd9Sstevel@tonic-gate     ST_SOFT_ERROR_REPORTING | /*    00800           Reports errors on close   */
29287c478bd9Sstevel@tonic-gate     ST_LONG_TIMEOUTS        | /*    01000           More time for some ops    */
29297c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT     | /*    08000           Supports blocks > 64KB    */
29307c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP        | /*    10000         Mode Select to enable comp  */
29317c478bd9Sstevel@tonic-gate     ST_CLN_TYPE_1,            /* 10000000         Asks to be cleaned this way */
29327c478bd9Sstevel@tonic-gate                               /* --------                                     */
29337c478bd9Sstevel@tonic-gate                               /* 10019E39                                     */
29347c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries                                */
29357c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries                                */
29367c478bd9Sstevel@tonic-gate     {0x80, 0x80, 0x80, 0x80}, /* .densities       Density codes [Note 1]      */
29377c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
29387c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
29397c478bd9Sstevel@tonic-gate   },
29407c478bd9Sstevel@tonic-gate 
2941d612f30aSyl   /*
2942d612f30aSyl    * [1] The IBM Ultrium Gen 4 "OEM" version has two densites at this time,
2943d612f30aSyl    *     One for Gen 3 0x44, One for Gen 4 0x46.
2944d612f30aSyl    *     This drive is configured with ST_KNOWS_MEDIA.
2945d612f30aSyl    *     That means that it will look at the mediatype from the mode sense
2946d612f30aSyl    *     to select the density code. The compression will be selected based
2947d612f30aSyl    *     on the minor node the user opened.
2948d612f30aSyl    * [2] The IBM LTO reports a medium type that is used to select the density.
2949d612f30aSyl    */
2950d612f30aSyl   {                           /* Structure member Description                 */
2951d612f30aSyl                               /* ---------------- -----------                 */
2952d612f30aSyl     "IBM Ultrium Gen 4 LTO",  /* .name            Display ("pretty") name     */
2953d612f30aSyl     19,                       /* .length          Length of next item...      */
2954d612f30aSyl     "IBM     ULTRIUM-TD4",    /* .vid             Vendor-product ID string    */
2955d612f30aSyl     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
2956d612f30aSyl     0,                        /* .bsize           Block size (0 = variable)   */
2957d612f30aSyl                               /* .options         Drive option flags:         */
2958d612f30aSyl     ST_VARIABLE         |     /*  0000001           Supports variable length  */
2959d612f30aSyl     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
2960d612f30aSyl     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
2961d612f30aSyl     ST_KNOWS_EOD        |     /*  0000200           Recognizes end-of-data    */
2962d612f30aSyl     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
2963d612f30aSyl     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
2964d612f30aSyl     ST_MODE_SEL_COMP    |     /*  0010000           [Note 1]                  */
2965d612f30aSyl     ST_KNOWS_MEDIA      |     /*  0800000         Media detrmines density     */
2966d612f30aSyl     ST_WORMABLE,              /*  1000000         Is WORM capable             */
2967d612f30aSyl                               /*  -------                                     */
2968d612f30aSyl                               /*  1818619                                     */
2969d612f30aSyl     -1,                       /* .max_rretries    Not used any more.          */
2970d612f30aSyl     -1,                       /* .max_wretries    Not used any more.          */
2971d612f30aSyl     {0x44, 0x44, 0x46, 0x46}, /* .densities       Density codes [Note 1]      */
2972d612f30aSyl     MT_DENSITY4,              /* .default_density (.densities[x])             */
2973d612f30aSyl     {0x38, 0x38, 0x48, 0x48}, /* .mediatype       Media type  [Note 2]        */
2974d612f30aSyl     MINUTES(1),               /* .non_motion_time                             */
2975d612f30aSyl     MINUTES(23),              /* .io_time                                     */
2976d612f30aSyl     MINUTES(9),               /* .rewind_time                                 */
2977d612f30aSyl     MINUTES(183),             /* .space_time      worst case directory invalid*/
2978d612f30aSyl     MINUTES(9),               /* .load_time                                   */
2979d612f30aSyl     MINUTES(13),              /* .unload_time                                 */
2980d612f30aSyl     MINUTES(180)              /* .erase_time                                  */
2981d612f30aSyl   },
2982d612f30aSyl 
2983d612f30aSyl   /*
2984d612f30aSyl    * [1] The IBM Ultrium Gen 4 "IBM" version has two densites at this time,
2985d612f30aSyl    *     One for Gen 3 0x44, one for Gen 4 0x46.
2986d612f30aSyl    *     This drive is configured with ST_KNOWS_MEDIA.
2987d612f30aSyl    *     That means that it will look at the mediatype from the mode sense
2988d612f30aSyl    *     to select the density code. The compression will be selected based
2989d612f30aSyl    *     on the minor node the user opened.
2990d612f30aSyl    * [2] The IBM LTO reports a medium type that is used to select the density.
2991d612f30aSyl    */
2992d612f30aSyl   {                           /* Structure member Description                 */
2993d612f30aSyl                               /* ---------------- -----------                 */
2994d612f30aSyl     "IBM Ultrium Gen 4 LTO",  /* .name            Display ("pretty") name     */
2995d612f30aSyl     19,                       /* .length          Length of next item...      */
2996d612f30aSyl     "IBM     ULT3580-TD4",    /* .vid             Vendor-product ID string    */
2997d612f30aSyl     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
2998d612f30aSyl     0,                        /* .bsize           Block size (0 = variable)   */
2999d612f30aSyl                               /* .options         Drive option flags:         */
3000d612f30aSyl     ST_VARIABLE         |     /*  0000001           Supports variable length  */
3001d612f30aSyl     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
3002d612f30aSyl     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
3003d612f30aSyl     ST_KNOWS_EOD        |     /*  0000200           Recognizes end-of-data    */
3004d612f30aSyl     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
3005d612f30aSyl     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
3006d612f30aSyl     ST_MODE_SEL_COMP    |     /*  0010000           [Note 1]                  */
3007d612f30aSyl     ST_KNOWS_MEDIA      |     /*  0800000         Media detrmines density     */
3008d612f30aSyl     ST_WORMABLE,              /*  1000000         Is WORM capable             */
3009d612f30aSyl                               /*  -------                                     */
3010d612f30aSyl                               /*  1818619                                     */
3011d612f30aSyl     -1,                       /* .max_rretries    Not used any more.          */
3012d612f30aSyl     -1,                       /* .max_wretries    Not used any more.          */
3013d612f30aSyl     {0x44, 0x44, 0x46, 0x46}, /* .densities       Density codes [Note 1]      */
3014d612f30aSyl     MT_DENSITY4,              /* .default_density (.densities[x])             */
3015d612f30aSyl     {0x38, 0x38, 0x48, 0x48}, /* .mediatype       Media type  [Note 2]        */
3016d612f30aSyl     MINUTES(1),               /* .non_motion_time                             */
3017d612f30aSyl     MINUTES(23),              /* .io_time                                     */
3018d612f30aSyl     MINUTES(9),               /* .rewind_time                                 */
3019d612f30aSyl     MINUTES(183),             /* .space_time      worst case directory invalid*/
3020d612f30aSyl     MINUTES(9),               /* .load_time                                   */
3021d612f30aSyl     MINUTES(13),              /* .unload_time                                 */
3022d612f30aSyl     MINUTES(180)              /* .erase_time                                  */
3023d612f30aSyl   },
3024d612f30aSyl 
30257c478bd9Sstevel@tonic-gate   /*
30267c478bd9Sstevel@tonic-gate    * [1] The IBM Ultrium Gen 3 "OEM" version has three densites at this time,
30277c478bd9Sstevel@tonic-gate    *     One for Gen 1 0x40, One for Gen 2 0x42 and for Gen 3 0x44.
30287c478bd9Sstevel@tonic-gate    *     This drive is configured with ST_KNOWS_MEDIA.
30297c478bd9Sstevel@tonic-gate    *     That means that it will look at the mediatype from the mode sense
30307c478bd9Sstevel@tonic-gate    *     to select the density code. The compression will be selected based
30317c478bd9Sstevel@tonic-gate    *     on the minor node the user opened.
30327c478bd9Sstevel@tonic-gate    * [2] The IBM LTO reports a medium type that is used to select the density.
30337c478bd9Sstevel@tonic-gate    */
30347c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
30357c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
30367c478bd9Sstevel@tonic-gate     "IBM Ultrium Gen 3 LTO",  /* .name            Display ("pretty") name     */
30377c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
30387c478bd9Sstevel@tonic-gate     "IBM     ULTRIUM-TD3",    /* .vid             Vendor-product ID string    */
30397c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
30407c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
30417c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
30425988135dSrralphs     ST_VARIABLE         |     /*  0000001           Supports variable length  */
30435988135dSrralphs     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
30445988135dSrralphs     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
30455988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200           Recognizes end-of-data    */
30465988135dSrralphs     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
30475988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
30485988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000           [Note 1]                  */
30495988135dSrralphs     ST_KNOWS_MEDIA      |     /*  0800000         Media detrmines density     */
30505988135dSrralphs     ST_WORMABLE,              /*  1000000         Is WORM capable             */
30515988135dSrralphs                               /*  -------                                     */
30525988135dSrralphs                               /*  1818619                                     */
30537c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    Not used any more.          */
30547c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    Not used any more.          */
30557c478bd9Sstevel@tonic-gate     {0x40, 0x42, 0x44, 0x44}, /* .densities       Density codes [Note 1]      */
30567c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
30577c478bd9Sstevel@tonic-gate     {0x18, 0x28, 0x38, 0x38}, /* .mediatype       Media type  [Note 2]        */
30587c478bd9Sstevel@tonic-gate     MINUTES(1),               /* .non_motion_time                             */
30597c478bd9Sstevel@tonic-gate     MINUTES(18),              /* .io_time                                     */
30607c478bd9Sstevel@tonic-gate     MINUTES(9),               /* .rewind_time                                 */
30617c478bd9Sstevel@tonic-gate     MINUTES(165),             /* .space_time      worst case directory invalid*/
30627c478bd9Sstevel@tonic-gate     MINUTES(9),               /* .load_time                                   */
30637c478bd9Sstevel@tonic-gate     MINUTES(12),              /* .unload_time                                 */
30647c478bd9Sstevel@tonic-gate     MINUTES(160)              /* .erase_time                                  */
30657c478bd9Sstevel@tonic-gate   },
30667c478bd9Sstevel@tonic-gate 
30677c478bd9Sstevel@tonic-gate   /*
30687c478bd9Sstevel@tonic-gate    * [1] The IBM Ultrium Gen 3 "IBM" version has three densites at this time,
30697c478bd9Sstevel@tonic-gate    *     One for Gen 1 0x40, One for Gen 2 0x42 and Gen 3 0x44.
30707c478bd9Sstevel@tonic-gate    *     This drive is configured with ST_KNOWS_MEDIA.
30717c478bd9Sstevel@tonic-gate    *     That means that it will look at the mediatype from the mode sense
30727c478bd9Sstevel@tonic-gate    *     to select the density code. The compression will be selected based
30737c478bd9Sstevel@tonic-gate    *     on the minor node the user opened.
30747c478bd9Sstevel@tonic-gate    * [2] The IBM LTO reports a medium type that is used to select the density.
30757c478bd9Sstevel@tonic-gate    */
30767c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
30777c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
30787c478bd9Sstevel@tonic-gate     "IBM Ultrium Gen 3 LTO",  /* .name            Display ("pretty") name     */
30797c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
30807c478bd9Sstevel@tonic-gate     "IBM     ULT3580-TD3",    /* .vid             Vendor-product ID string    */
30817c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
30827c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
30837c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
30845988135dSrralphs     ST_VARIABLE         |     /*  0000001           Supports variable length  */
30855988135dSrralphs     ST_BSF              |     /*  0000008           Supports SPACE block fwd  */
30865988135dSrralphs     ST_BSR              |     /*  0000010           Supports SPACE block rev  */
30875988135dSrralphs     ST_KNOWS_EOD        |     /*  0000200           Recognizes end-of-data    */
30885988135dSrralphs     ST_UNLOADABLE       |     /*  0000400           Driver can be unloaded    */
30895988135dSrralphs     ST_NO_RECSIZE_LIMIT |     /*  0008000           Supports blocks > 64KB    */
30905988135dSrralphs     ST_MODE_SEL_COMP    |     /*  0010000           [Note 1]                  */
30915988135dSrralphs     ST_KNOWS_MEDIA      |     /*  0800000         Media detrmines density     */
30925988135dSrralphs     ST_WORMABLE,              /*  1000000         Is WORM capable             */
30935988135dSrralphs                               /*  -------                                     */
30945988135dSrralphs                               /*  1818619                                     */
30957c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    Not used any more.          */
30967c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    Not used any more.          */
30977c478bd9Sstevel@tonic-gate     {0x40, 0x42, 0x44, 0x44}, /* .densities       Density codes [Note 1]      */
30987c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
30997c478bd9Sstevel@tonic-gate     {0x18, 0x28, 0x38, 0x38}, /* .mediatype       Media type  [Note 2]        */
31007c478bd9Sstevel@tonic-gate     MINUTES(1),               /* .non_motion_time                             */
31017c478bd9Sstevel@tonic-gate     MINUTES(18),              /* .io_time                                     */
31027c478bd9Sstevel@tonic-gate     MINUTES(9),               /* .rewind_time                                 */
31037c478bd9Sstevel@tonic-gate     MINUTES(165),             /* .space_time      worst case directory invalid*/
31047c478bd9Sstevel@tonic-gate     MINUTES(9),               /* .load_time                                   */
31057c478bd9Sstevel@tonic-gate     MINUTES(12),              /* .unload_time                                 */
31067c478bd9Sstevel@tonic-gate     MINUTES(160)              /* .erase_time                                  */
31077c478bd9Sstevel@tonic-gate   },
31087c478bd9Sstevel@tonic-gate 
31097c478bd9Sstevel@tonic-gate   /*
31107c478bd9Sstevel@tonic-gate    * [1] The IBM Ultrium Gen 2 "OEM" version has two densites at this time,
31117c478bd9Sstevel@tonic-gate    *     One for Gen 1 0x40, One for Gen 2 0x42. In reallity The media
31127c478bd9Sstevel@tonic-gate    *     Selects which density code is used but this documents the codes
31137c478bd9Sstevel@tonic-gate    *     for those who care to know.
31147c478bd9Sstevel@tonic-gate    *     Compression is controlled via the Compression mode page.
31157c478bd9Sstevel@tonic-gate    * [2] The IBM Ultrium has only one speed (if the driver ever cares).
31167c478bd9Sstevel@tonic-gate    */
31177c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
31187c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
31197c478bd9Sstevel@tonic-gate     "IBM Ultrium Gen 2 LTO",  /* .name            Display ("pretty") name     */
31207c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
31217c478bd9Sstevel@tonic-gate     "IBM     ULTRIUM-TD2",    /* .vid             Vendor-product ID string    */
31227c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
31237c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
31247c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
31257c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
31267c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
31277c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
31287c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
31297c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
31307c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
31317c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           [Note 1]                  */
31327c478bd9Sstevel@tonic-gate                               /*    -----                                     */
31337c478bd9Sstevel@tonic-gate                               /*    18619                                     */
31347c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    Not used any more.          */
31357c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    Not used any more.          */
31367c478bd9Sstevel@tonic-gate     {0x40, 0x40, 0x42, 0x42}, /* .densities       Density codes [Note 1]      */
31377c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
31387c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
31397c478bd9Sstevel@tonic-gate     MINUTES(1),               /* .non_motion_time                             */
31407c478bd9Sstevel@tonic-gate     MINUTES(18),              /* .io_time                                     */
31417c478bd9Sstevel@tonic-gate     MINUTES(9),               /* .rewind_time                                 */
31427c478bd9Sstevel@tonic-gate     MINUTES(151),             /* .space_time      worst case directory invalid*/
31437c478bd9Sstevel@tonic-gate     MINUTES(12),              /* .load_time                                   */
31447c478bd9Sstevel@tonic-gate     MINUTES(11),              /* .unload_time                                 */
31457c478bd9Sstevel@tonic-gate     MINUTES(151)              /* .erase_time                                  */
31467c478bd9Sstevel@tonic-gate   },
31477c478bd9Sstevel@tonic-gate 
31487c478bd9Sstevel@tonic-gate   /*
31497c478bd9Sstevel@tonic-gate    * [1] The IBM Ultrium Gen 2 "IBM" version has two densites at this time,
31507c478bd9Sstevel@tonic-gate    *     One for Gen 1 0x40, One for Gen 2 0x42. In reallity The media
31517c478bd9Sstevel@tonic-gate    *     Selects which density code is used but this documents the codes
31527c478bd9Sstevel@tonic-gate    *     for those who care to know.
31537c478bd9Sstevel@tonic-gate    *     Compression is controlled via the Compression mode page.
31547c478bd9Sstevel@tonic-gate    * [2] The IBM Ultrium has only one speed (if the driver ever cares).
31557c478bd9Sstevel@tonic-gate    */
31567c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
31577c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
31587c478bd9Sstevel@tonic-gate     "IBM Ultrium Gen 2 LTO",  /* .name            Display ("pretty") name     */
31597c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
31607c478bd9Sstevel@tonic-gate     "IBM     ULT3580-TD2",    /* .vid             Vendor-product ID string    */
31617c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
31627c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
31637c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
31647c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
31657c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
31667c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
31677c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
31687c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
31697c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
31707c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           [Note 1]                  */
31717c478bd9Sstevel@tonic-gate                               /*    -----                                     */
31727c478bd9Sstevel@tonic-gate                               /*    18619                                     */
31737c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    Not used any more.          */
31747c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    Not used any more.          */
31757c478bd9Sstevel@tonic-gate     {0x40, 0x40, 0x42, 0x42}, /* .densities       Density codes [Note 1]      */
31767c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
31777c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
31787c478bd9Sstevel@tonic-gate     MINUTES(1),               /* .non_motion_time                             */
31797c478bd9Sstevel@tonic-gate     MINUTES(18),              /* .io_time                                     */
31807c478bd9Sstevel@tonic-gate     MINUTES(9),               /* .rewind_time                                 */
31817c478bd9Sstevel@tonic-gate     MINUTES(151),             /* .space_time      worst case directory invalid*/
31827c478bd9Sstevel@tonic-gate     MINUTES(12),              /* .load_time                                   */
31837c478bd9Sstevel@tonic-gate     MINUTES(11),              /* .unload_time                                 */
31847c478bd9Sstevel@tonic-gate     MINUTES(151)              /* .erase_time                                  */
31857c478bd9Sstevel@tonic-gate   },
31867c478bd9Sstevel@tonic-gate 
31877c478bd9Sstevel@tonic-gate   /*
31887c478bd9Sstevel@tonic-gate    * [1] The IBM Ultrium has only one density at this time,
31897c478bd9Sstevel@tonic-gate    *     Compression is controlled via the Device Configuration mode page.
31907c478bd9Sstevel@tonic-gate    * [2] The IBM Ultrium has only one speed (if the driver ever cares).
31917c478bd9Sstevel@tonic-gate    */
31927c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
31937c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
31947c478bd9Sstevel@tonic-gate     "IBM Ultrium LTO",        /* .name            Display ("pretty") name     */
31957c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
31967c478bd9Sstevel@tonic-gate     "IBM     ULTRIUM-TD1",    /* .vid             Vendor-product ID string    */
31977c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
31987c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
31997c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
32007c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
32017c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
32027c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
32037c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
32047c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
32057c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
32067c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           [Note 1]                  */
32077c478bd9Sstevel@tonic-gate                               /*    -----                                     */
32087c478bd9Sstevel@tonic-gate                               /*    18619                                     */
32097c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    Not used any more.          */
32107c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    Not used any more.          */
32117c478bd9Sstevel@tonic-gate     {0x40, 0x40, 0x40, 0x40}, /* .densities       Density codes [Note 1]      */
32127c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
32137c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
32147c478bd9Sstevel@tonic-gate     MINUTES(1),               /* .non_motion_time                             */
32157c478bd9Sstevel@tonic-gate     MINUTES(18),              /* .io_time                                     */
32167c478bd9Sstevel@tonic-gate     MINUTES(8),               /* .rewind_time                                 */
32177c478bd9Sstevel@tonic-gate     MINUTES(173),             /* .space_time      worst case directory invalid*/
32187c478bd9Sstevel@tonic-gate     MINUTES(11),              /* .load_time                                   */
32197c478bd9Sstevel@tonic-gate     MINUTES(11),              /* .unload_time                                 */
32207c478bd9Sstevel@tonic-gate     MINUTES(173)              /* .erase_time                                  */
32217c478bd9Sstevel@tonic-gate   },
32227c478bd9Sstevel@tonic-gate 
32237c478bd9Sstevel@tonic-gate   /*
32247c478bd9Sstevel@tonic-gate    * This is the same drive as the above except for the inquiry string and
32257c478bd9Sstevel@tonic-gate    * that it is a "End User Version".
32267c478bd9Sstevel@tonic-gate    * [1] The IBM Ultrium has only one density at this time,
32277c478bd9Sstevel@tonic-gate    *     Compression is controlled via the Device Configuration mode page.
32287c478bd9Sstevel@tonic-gate    * [2] The IBM Ultrium has only one speed (if the driver ever cares).
32297c478bd9Sstevel@tonic-gate    */
32307c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
32317c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
32327c478bd9Sstevel@tonic-gate     "IBM Ultrium LTO",        /* .name            Display ("pretty") name     */
32337c478bd9Sstevel@tonic-gate     19,                       /* .length          Length of next item...      */
32347c478bd9Sstevel@tonic-gate     "IBM     ULT3580-TD1",    /* .vid             Vendor-product ID string    */
32357c478bd9Sstevel@tonic-gate     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
32367c478bd9Sstevel@tonic-gate     0,                        /* .bsize           Block size (0 = variable)   */
32377c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
32387c478bd9Sstevel@tonic-gate     ST_VARIABLE         |     /*    00001           Supports variable length  */
32397c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
32407c478bd9Sstevel@tonic-gate     ST_BSR              |     /*    00010           Supports SPACE block rev  */
32417c478bd9Sstevel@tonic-gate     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
32427c478bd9Sstevel@tonic-gate     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
32437c478bd9Sstevel@tonic-gate     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
32447c478bd9Sstevel@tonic-gate     ST_MODE_SEL_COMP,         /*    10000           [Note 1]                  */
32457c478bd9Sstevel@tonic-gate                               /*    -----                                     */
32467c478bd9Sstevel@tonic-gate                               /*    18619                                     */
32477c478bd9Sstevel@tonic-gate     -1,                       /* .max_rretries    Not used any more.          */
32487c478bd9Sstevel@tonic-gate     -1,                       /* .max_wretries    Not used any more.          */
32497c478bd9Sstevel@tonic-gate     {0x40, 0x40, 0x40, 0x40}, /* .densities       Density codes [Note 1]      */
32507c478bd9Sstevel@tonic-gate     MT_DENSITY4,              /* .default_density (.densities[x])             */
32517c478bd9Sstevel@tonic-gate     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
32527c478bd9Sstevel@tonic-gate     MINUTES(1),               /* .non_motion_time                             */
32537c478bd9Sstevel@tonic-gate     MINUTES(18),              /* .io_time                                     */
32547c478bd9Sstevel@tonic-gate     MINUTES(8),               /* .rewind_time                                 */
32557c478bd9Sstevel@tonic-gate     MINUTES(173),             /* .space_time      worst case directory invalid*/
32567c478bd9Sstevel@tonic-gate     MINUTES(11),              /* .load_time                                   */
32577c478bd9Sstevel@tonic-gate     MINUTES(11),              /* .unload_time                                 */
32587c478bd9Sstevel@tonic-gate     MINUTES(173)              /* .erase_time                                  */
32597c478bd9Sstevel@tonic-gate   },
32607c478bd9Sstevel@tonic-gate 
32612d1f5670Szl   /*
32622d1f5670Szl    * [1] The IBM 3592 Cartridge has only one density at this time,
32632d1f5670Szl    *     Compression is controlled via the Device Configuration mode page.
32642d1f5670Szl    * [2] The IBM 3592 Cartridge has only one speed (if the driver ever cares).
32652d1f5670Szl    */
32662d1f5670Szl   {                           /* Structure member Description                 */
32672d1f5670Szl                               /* ---------------- -----------                 */
32682d1f5670Szl     "IBM 3592 Cartridge",     /* .name            Display ("pretty") name     */
32692d1f5670Szl     13,                       /* .length          Length of next item...      */
32702d1f5670Szl     "IBM     03592",          /* .vid             Vendor-product ID string    */
32712d1f5670Szl     MT_LTO,                   /* .type            Numeric type (cf. mtio.h)   */
32722d1f5670Szl     0,                        /* .bsize           Block size (0 = variable)   */
32732d1f5670Szl                               /* .options         Drive option flags:         */
32742d1f5670Szl     ST_VARIABLE         |     /*    00001           Supports variable length  */
32752d1f5670Szl     ST_BSF              |     /*    00008           Supports SPACE block fwd  */
32762d1f5670Szl     ST_BSR              |     /*    00010           Supports SPACE block rev  */
32772d1f5670Szl     ST_AUTODEN_OVERRIDE |     /*    00040           Autodensity override flag */
32782d1f5670Szl     ST_KNOWS_EOD        |     /*    00200           Recognizes end-of-data    */
32792d1f5670Szl     ST_UNLOADABLE       |     /*    00400           Driver can be unloaded    */
32802d1f5670Szl     ST_NO_RECSIZE_LIMIT |     /*    08000           Supports blocks > 64KB    */
32812d1f5670Szl     ST_MODE_SEL_COMP,         /*    10000           [Note 1]                  */
32822d1f5670Szl                               /*    -----                                     */
32832d1f5670Szl                               /*    18659                                     */
32842d1f5670Szl     -1,                       /* .max_rretries    Not used any more.          */
32852d1f5670Szl     -1,                       /* .max_wretries    Not used any more.          */
32862d1f5670Szl     {0x51, 0x51, 0x51, 0x51}, /* .densities       Density codes [Note 1]      */
32872d1f5670Szl     MT_DENSITY4,              /* .default_density (.densities[x])             */
32882d1f5670Szl     {0, 0, 0, 0},             /* .speeds          Speed codes [Note 2]        */
32892d1f5670Szl     MINUTES(1),               /* .non_motion_time                             */
32902d1f5670Szl     MINUTES(18),              /* .io_time                                     */
32912d1f5670Szl     MINUTES(8),               /* .rewind_time                                 */
32922d1f5670Szl     MINUTES(14),              /* .space_time      worst case directory invalid*/
32932d1f5670Szl     MINUTES(12),              /* .load_time                                   */
32942d1f5670Szl     MINUTES(12),              /* .unload_time                                 */
32952d1f5670Szl     MINUTES(235)              /* .erase_time                                  */
32962d1f5670Szl   },
32972d1f5670Szl 
32987c478bd9Sstevel@tonic-gate   /*
32997c478bd9Sstevel@tonic-gate    * Seagate Hornet NS20 USB Travan
33007c478bd9Sstevel@tonic-gate    *
33017c478bd9Sstevel@tonic-gate    *     NOTES
33027c478bd9Sstevel@tonic-gate    *     -----
33037c478bd9Sstevel@tonic-gate    *  o This drive is not OEM'ed or qualified by Sun.
33047c478bd9Sstevel@tonic-gate    *
33057c478bd9Sstevel@tonic-gate    * [1] The NS20 Travan uses 0 or the "default" density code.
33067c478bd9Sstevel@tonic-gate    * [2] The NS20 Travan has only one speed (if the driver ever cares).
33077c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
33087c478bd9Sstevel@tonic-gate    */
33097c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
33107c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
33117c478bd9Sstevel@tonic-gate     "Seagate Hornet NS20 Travan",
33127c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
33137c478bd9Sstevel@tonic-gate     17,                       /* .length          Length of next item...      */
33147c478bd9Sstevel@tonic-gate     "Seagate STT20000A",      /* .vid             Vendor-product ID string    */
33157c478bd9Sstevel@tonic-gate     MT_ISQIC,                 /* .type            Numeric type (cf. mtio.h)   */
33167c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
33177c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
33187c478bd9Sstevel@tonic-gate     ST_QIC              |     /*    00002           QIC tape device           */
33197c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports back SPACE file  */
33207c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
33217c478bd9Sstevel@tonic-gate                               /*    -----                                     */
33227c478bd9Sstevel@tonic-gate                               /*    0040A                                     */
33237c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
33247c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
33257c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
33267c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density (.densities[x])             */
33277c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
33287c478bd9Sstevel@tonic-gate   },
33297c478bd9Sstevel@tonic-gate 
33307c478bd9Sstevel@tonic-gate 
33317c478bd9Sstevel@tonic-gate   /*
33327c478bd9Sstevel@tonic-gate    * Seagate Hornet Travan 40
33337c478bd9Sstevel@tonic-gate    *
33347c478bd9Sstevel@tonic-gate    *     NOTES
33357c478bd9Sstevel@tonic-gate    *     -----
33367c478bd9Sstevel@tonic-gate    *  o This drive is not OEM'ed or qualified by Sun.
33377c478bd9Sstevel@tonic-gate    *
33387c478bd9Sstevel@tonic-gate    * [1] The Travan uses 0 or the "default" density code.
33397c478bd9Sstevel@tonic-gate    * [2] The Travan has only one speed (if the driver ever cares).
33407c478bd9Sstevel@tonic-gate    * [3] max_rretries and max_wretries are driver anachronisms.
33417c478bd9Sstevel@tonic-gate    */
33427c478bd9Sstevel@tonic-gate   {                           /* Structure member Description                 */
33437c478bd9Sstevel@tonic-gate                               /* ---------------- -----------                 */
33447c478bd9Sstevel@tonic-gate     "Seagate Hornet Travan 40",
33457c478bd9Sstevel@tonic-gate                               /* .name            Display ("pretty") name     */
33467c478bd9Sstevel@tonic-gate     16,                       /* .length          Length of next item...      */
33477c478bd9Sstevel@tonic-gate     "Seagate STT3401A",       /* .vid             Vendor-product ID string    */
33487c478bd9Sstevel@tonic-gate     MT_ISQIC,                 /* .type            Numeric type (cf. mtio.h)   */
33497c478bd9Sstevel@tonic-gate     512,                      /* .bsize           Block size (0 = variable)   */
33507c478bd9Sstevel@tonic-gate                               /* .options         Drive option flags:         */
33517c478bd9Sstevel@tonic-gate     ST_QIC              |     /*    00002           QIC tape device           */
33527c478bd9Sstevel@tonic-gate     ST_BSF              |     /*    00008           Supports back SPACE file  */
33537c478bd9Sstevel@tonic-gate     ST_UNLOADABLE,            /*    00400           Driver can be unloaded    */
33547c478bd9Sstevel@tonic-gate                               /*    -----                                     */
33557c478bd9Sstevel@tonic-gate                               /*    0040A                                     */
33567c478bd9Sstevel@tonic-gate     400,                      /* .max_rretries    [Note 3]                    */
33577c478bd9Sstevel@tonic-gate     400,                      /* .max_wretries    [Note 3]                    */
33587c478bd9Sstevel@tonic-gate     {0x00, 0x00, 0x00, 0x00}, /* .densities       Density codes [Note 1]      */
33597c478bd9Sstevel@tonic-gate     MT_DENSITY1,              /* .default_density (.densities[x])             */
33607c478bd9Sstevel@tonic-gate     {0, 0, 0, 0}              /* .speeds          Speed codes [Note 2]        */
33617c478bd9Sstevel@tonic-gate   }
33627c478bd9Sstevel@tonic-gate 
33637c478bd9Sstevel@tonic-gate 	/* END CSTYLED */
33647c478bd9Sstevel@tonic-gate 
33657c478bd9Sstevel@tonic-gate };
33667c478bd9Sstevel@tonic-gate 
33677c478bd9Sstevel@tonic-gate 
33687c478bd9Sstevel@tonic-gate const int st_ndrivetypes = (sizeof (st_drivetypes)/sizeof (st_drivetypes[0]));
3369