----------
X-Sun-Data-Type: text
X-Sun-Data-Description: text
X-Sun-Data-Name: text
X-Sun-Charset: us-ascii
X-Sun-Content-Lines: 22

> 
> > Recently, I've attached a Exabyte 8500c 8mm tape drive (actually the drive
> > is in an Exabyte 10e tape stacker unit) to a sparc 5 running solaris 2.3 and
> > AFS 3.3a. Initially, the sparc 5 complained about the Exabyte 8500c by
> > not recognizing it and issuing a "Fixed record length (1024 byte blocks)"
> > SCSI I/O error whenever the drive was accessed.
> 
> > After checking with Sun, I determined that Solaris 2.3 has builtin support
> > for the Exabyte 8505 and 8500 but not the 8500c. I then found out from the
> > Exabyte Corporation that the problem could be solved by adding the following
> > entry to the /kernel/drv/st.conf file:
> 
> > # Entry for the Exabyte EXB-8500C 8mm tape drive #
> > tape-config-list =
> > 	"EXABYTE EXB8500C", "Exabyte 8MM EXB8500C", "EXBT-8CC";
> > 	 EXBT-8CC = 1,0x35,1024,0x0039,4,0x8c,0x15,0x90,0x14,3;
> 

I believe, as was pointed out, that your problem is that not all of the
flags appear to be turned on properly in your exabyte entry.  You might
try the following, which was provided by Sun and modified a little by
us for local use of the DLT tape drives.  
----------
X-Sun-Data-Type: default
X-Sun-Data-Description: default
X-Sun-Data-Name: st.conf
X-Sun-Charset: us-ascii
X-Sun-Content-Lines: 225

#	
#	@(#)st.conf.newstop 1.1 94/08/16
#
# Derived from Sun's st.conf:
# Copyright (c) 1992, by Sun Microsystems, Inc.
#
#ident	"@(#)st.conf	1.7	93/05/03 SMI"
#
# WARNING : This st.conf.newstop is a list of 3rd party scsi tape devices
#	configurations that have NOT been tested by Sun and most of these
#	tape drives are not supported by Sun.  It is a compilation of
#	entries from various places on the net.
#
# 1. This file is intended to be installed as /kernel/drv/st.conf.
# Once installed, either do, as root,
#
#	rem_drv st ; add_drv st
#
# or do a reconfiguration reboot (halt, boot -r).
#
# 2. These Flag Explanations will show up in Sun's stdef.h for Solaris 2.5.
#	Not all of these flags are implemented in Solaris 2.3.  The two main
#	options only available as of Solaris 2.4 are :
#		ST_BUFFERED_WRITES
#		ST_NO_RECSIZE_LIMIT
#
#/* Defines for supported drive options */
##define ST_VARIABLE		0x001	/* Device supports variable	*/
#					/* length record sizes		*/
##define ST_QIC			0x002	/* QIC tape device 		*/
##define ST_REEL		0x004	/* 1/2-inch reel tape device	*/
##define ST_BSF			0x008	/* Device supports backspace	*/
#					/* file as in mt(1) bsf : 	*/
#					/* backspace over EOF marks.	*/
#					/* Devices not supporting bsf 	*/
#					/* will fail with ENOTTY upon	*/
#					/* use of bsf			*/
##define ST_BSR			0x010	/* Device supports backspace	*/
#					/* record as in mt(1) bsr :	*/
#					/* backspace over records. If	*/
#					/* the device does not support 	*/
#					/* bsr, the st driver emulates	*/
#					/* the action by rewinding the	*/
#					/* tape and using forward space	*/
#					/* file (fsf) to the correct	*/
#					/* file and then uses forward	*/
#					/* space record (fsr) to the	*/
#					/* correct  record		*/
##define ST_LONG_ERASE		0x020	/* Device needs a longer time	*/
#					/* than normal to erase		*/
##define ST_AUTODEN_OVERRIDE	0x040	/* Auto-Density override flag	*/
#					/* Device can figure out the	*/
#					/* tape density automatically,	*/
#					/* without issuing a		*/
#					/* mode-select/mode-sense 	*/
##define ST_NOBUF		0x080	/* Don't use buffered mode.	*/
#					/* This disables the device's	*/
#					/* ability for buffered	writes	*/
#					/* I.e. The device acknowledges	*/
#					/* write completion after the	*/
#					/* data is written to the	*/
#					/* device's buffer, but before	*/
#					/* all the data is actually	*/
#					/* written to tape		*/
##define ST_NOPARITY		0x100	/* Device cannot generate 	*/
#					/* parity, so don't check	*/
#					/* parity while talking to it. 	*/
##define ST_KNOWS_EOD		0x200	/* Device knows when EOD (End	*/
#					/* of Data) has been reached.	*/
#					/* If the device knows EOD, st	*/
#					/* uses fast file skipping.	*/
#					/* If it does not know EOD,	*/
#					/* file skipping happens one	*/
#					/* file at a time. 		*/
##define ST_UNLOADABLE		0x400	/* Device will not complain if	*/
#					/* the st driver is unloaded &	*/
#					/* loaded again; e.g. will	*/
#					/* return the correct inquiry	*/
#					/* string			*/
##define ST_SOFT_ERROR_REPORTING 0x800	/* Do request or log sense on	*/
#					/* close to report soft errors.	*/
#					/* Currently only Exabyte and	*/
#					/* DAT drives support this	*/
#					/* feature.  			*/
##define ST_LONG_TIMEOUTS	0x1000	/* Device needs 5 times longer	*/
#					/* timeouts for normal		*/
#					/* operation			*/
##define ST_BUFFERED_WRITES	0x4000	/* The data is buffered in the	*/
#					/* driver and pre-acked to the	*/
#					/* application 			*/
#	ST_NO_RECSIZE_LIMIT	0x8000	/* For variable record size	*/
#					/* devices only. If flag is	*/
#					/* set, then don't limit	*/
#					/* record size to 64k as in	*/
#					/* pre-Solaris 2.4 releases.	*/
#					/* The only limit on the	*/
#					/* record size will be the max	*/
#					/* record size the device can	*/
#					/* handle or the max DMA	*/
#					/* transfer size of the		*/
#					/* machine, which ever is	*/
#					/* smaller. Beware of		*/
#					/* incompatabilities with	*/
#					/* tapes of pre-Solaris 2.4	*/
#					/* OS's written with large	*/
#					/* (>64k) block sizes, as	*/
#					/* their true block size is	*/
#					/* a max of approx 64k		*/
#
#
# 
# 3. Unqualifed density devices for BSD behaviour (e.g., :b, or /dev/rmt/Nb),
# always selects the *middle* density, not the one you specify here. This
# means, effectively, that you always should specify the middle density
# for the default, and that if you have, say, an Exabyte 8500c/8505,
# you really cannnot use the 'middle' density for the 8200c like it would
# make sense to, in case someone actually *specifies* the fully qualified
# name (in this case, /dev/rmt/Nmb). See a list of 'should bes' below for
# what things should be, if they only worked. These are fixed in Solaris
# 2.4.
#
#
# Should Bes:
#
# Notes on Actual Support:
#
#	Dec DLT: punt on density selection because compression is
#		 not a density code but an (unreachable for us)
#		 Mode Select page setting.
#
#	The DLT2 Dec variant is for the DLT2000 series autoloaders- which may
#	be either DLT2700 or DLT2500 based upon what's attached.
#
# 	Exabyte 8505 treated the same as the 8500c. 
#
#	Wangtek 51000 not really verified.
#
# 	Although the st(7) man page states variable record length drives
# 	should have the block sizes as '0' in their entries, there is a bug
# 	in Solaris 2.3 (fixed in 2.4) that causes problems if this is the
# 	case.  Therefore the blocksizes are arbitrarily set to 1024, but
# 	this will not affect the variable record length functionality, as
# 	the ST_VARIABLE flags are still set in the flags field.
#

tape-config-list=
	"Metrum",		"Metrum VHS Cartridge",	"metD",
	"DEC     TZ87",		"DEC DLT",		"DLT",
	"DEC",		"DEC DLT",		"DLT",
	"WangDAT Model 2600",	"WangDAT 4mm DAT",	"wangDAT",
	"WangDAT Model 3400",	"WangDAT 4mm DAT",	"wangDAT",
	"SONY    SDT-5000",	"SONY 4mm DAT",		"DAT",
	"HP      C1553A  ",	"HP C1553A 4mm DAT",	"DAT",
	"HP      C1553A", 	"HP DDS2 4mm DATloader","DAT";
	"HP      HP35480A",	"HP 35480A 4mm DAT",	"DAT",
        "HP      HP35470A", 	"HP35470A 4mm DAT", 	"HP70-data",
	"R-BYTE  RB100",	"R-Byte Whozits",	"DAT",
	"WANGTEK 5525ES SCSI",	"Wangtek 525MB QIC",	"WtQIC",
	"WANGTEK 51000  SCSI",	"Wangtek 1.2GB QIC",	"WtQIC",
	"EXABYTE EXB-8505", "Exabyte 8505  8mm Helical Scan", "Exa8500c_sol2_3",
	"EXABYTE EXB8500C", "Exabyte 8500C 8mm Helical Scan", "Exa8500c_sol2_3";

metD	=       1,0x36,1024,0x1639,1,0x00,0;
wangDAT =       1,0x34,1024,0x0679,1,0x00,0;
DAT 	=       1,0x34,1024,0x0439,1,0x00,0;
HP70-data = 	1,0x34,1024,0x1679,1,0x0,0;
DLT	=	1,0x36,16384,0xD639,1,0x80,0x81,0x19,0x18,3;
WtQIC	=	1,0x32,512,0x0624,1,0x00,0;

# The EXB-8505 is supported in Solaris 2.3, but the Solaris 2.3 st(7) man
# page is incorrect in stating the density mode for the 'h' (high density)
# device.  This entry will change the device to act as per the man page.  In
# Solaris 2.4, the man page is correct in stating that the high density
# device is 8500c (compressed mode) and this entry will not be necessary.

Exa8500c_sol2_3 = 1,0x29,1024,0xCE39,4,0x14,0x15,0x15,0x8C,3;

name="st" class="scsi"
	target=0 lun=0;

name="st" class="scsi"
	target=1 lun=0;

name="st" class="scsi"
	target=2 lun=0;

name="st" class="scsi"
	target=3 lun=0;

name="st" class="scsi"
	target=4 lun=0;

name="st" class="scsi"
	target=5 lun=0;

name="st" class="scsi"
	target=6 lun=0;

#
#	In case there are wide tape drives, one can use these targets
#
#name="st" class="scsi"
#	target=8 lun=0;

#name="st" class="scsi"
#	target=9 lun=0;

#name="st" class="scsi"
#	target=10 lun=0;

#name="st" class="scsi"
#	target=11 lun=0;

#name="st" class="scsi"
#	target=12 lun=0;

#name="st" class="scsi"
#	target=13 lun=0;

#name="st" class="scsi"
#	target=14 lun=0;

#name="st" class="scsi"
#	target=15 lun=0;
-- 

Reply via email to