Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 9 Dec 1995 10:10:26 -0600
From:      "Eric J. Haug" <ejh@eas.slu.edu>
To:        current@freebsd.org
Subject:   Exabyte 8505 mods to scsi system
Message-ID:  <199512091610.KAA15578@eas.eas.slu.edu>

next in thread | raw e-mail | index | archive | help

These patches allow an Exabyte 8505 to be used in the four modes
it is capable of.
They were generated with respect to:
 *	$Id: scsi_tape.h,v 1.14 1995/11/30 07:43:46 pst Exp $
 *	$Id: scsiconf.h,v 1.32 1995/12/05 07:14:25 julian Exp $
 * $Id: st.c,v 1.49 1995/12/08 11:18:59 julian Exp $

Use requires mt to be used to set the densities as necessary:
mt -f /dev/st0ctl.0 density 0x14	8200 mode
mt -f /dev/st0ctl.1 density 0x15	8500 mode
mt -f /dev/st0ctl.2 density 0x8c	8500 compressed mode
mt -f /dev/st0ctl.3 density 0x90	8200 compressed mode

The patches were applied to 
FreeBSD 2.1-STABLE (EJH) #2: Sat Dec  9 08:48:08 CST 1995
and tested.

eric  ejh@eas.slu.edu

*** scsi_tape.h.orig	Thu Nov 30 04:34:17 1995
--- scsi_tape.h	Sat Dec  9 10:00:03 1995
***************
*** 308,311 ****
--- 308,315 ----
  #define DDS		0x13
  #define DAT_1		0x13
+ #define EXB_8200	0x14	/* from EXB-8505 Users Manual 510503-002 */
+ #define	EXB_8500	0x15
+ #define EXB_8500C	0x8C
+ #define	EXB_8200C	0x90
  #define QIC_3080	0x29
  #endif /* NEW_SCSICONF */
*** scsiconf.h.orig	Tue Dec  5 05:54:42 1995
--- scsiconf.h	Sat Dec  9 10:00:03 1995
***************
*** 241,245 ****
  /*  4*/	u_int32 blksiz;
  /*  6*/	u_int16 quirks;		/* same definitions as in XXX */
! /*  7*/	char    density;
  /*  8*/	char    spare[1];
  };
--- 241,245 ----
  /*  4*/	u_int32 blksiz;
  /*  6*/	u_int16 quirks;		/* same definitions as in XXX */
! /*  7*/	u_int8  density;
  /*  8*/	char    spare[1];
  };
*** st.c.orig	Fri Dec  8 05:26:48 1995
--- st.c	Sat Dec  9 10:00:04 1995
***************
*** 67,72 ****
--- 67,76 ----
  #define IS_CTLMODE(DEV) (MODE(DEV) == CTLMODE)
  
+ #ifdef	EXB_8200C
+ #define SCSI_2_MAX_DENSITY_CODE	EXB_8200C
+ #else
  #define SCSI_2_MAX_DENSITY_CODE	0x17	/* maximum density code specified
  					 * in SCSI II spec. */
+ #endif
  #ifndef NEW_SCSICONF
  /*
***************
*** 77,81 ****
  	u_int32 blksiz;
  	u_int32 quirks;		/* same definitions as in rogues */
! 	char    density;
  	char    spare[3];
  };
--- 81,85 ----
  	u_int32 blksiz;
  	u_int32 quirks;		/* same definitions as in rogues */
! 	u_int8  density;
  	char    spare[3];
  };
***************
*** 1366,1369 ****
--- 1370,1379 ----
  				if (number > SCSI_2_MAX_DENSITY_CODE) {
  					errcode = EINVAL;
+ 						/* ejh falling through here seems to be a bug
+ 						 * we immediately call st_mode_select and reset
+ 						 * errcode with the return value
+ 						 * since st->density is probably a previous
+ 						 * value or 0 this will most likely not fail
+ 						 */
  				} else {
  					st->density = number;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199512091610.KAA15578>