This directory contains kernel patches.

esp.diff patch for the ESP hostadapter driver of Solaris 2.4
	This patch makes it possible to abort immediate returning SCSI
	commands.	
st.diff	 patch for the ST SCSI targetdriver of Solaris 2.4
	This patch adds following functionality to the ST driver of Solaris 2.4:
	- support for handling DATs (Digital Audio Tapes).
	  This includes mostly disabling of tape movement commands as SPACE,
	  which won't work in Audiomode.
	- a global variable 'int st_uscsicmd_restricted' you can set to
	  0, if every user may have access to the USCSICMD ioctl. (Default 1)
	- support for access to logpages and modepages of DDS drives,
	  the LOCATE and the READ POSITION SCSI Commands.
	API: ioctl(fd,<cmd>,<arg>)

	Commands:
	MTIOABORT: No arguments, sends a SCSI ABORT message to the target.
	MTIORESET: No arguments, resets the bus/targetdevice.
	MTIOINQUIRY: Argument is a pointer to a block of memory starting with
		a struct mt_inquiry, whose size should be in the 'len' field.
		Returns with the memoryblock filled (starting at 'buf') with
		the result of the SCSI INQUIRY command sent
		to the target.
	MTIOQMPAGE: Argument is a pointer to a block of memory starting with
		a struct mt_modepage, whose size should be in the 'len' field.
		Returns with the memoryblock filled (starting at 'buf') with
		the result of the SCSI MODE SENSE command with modepage
		'nr'.
	MTIOQLPAGE: Argument is a pointer to a block of memory starting with
		a struct mt_logpage, whose size should be in the 'len' field.
		Returns with the memoryblock filled (starting at 'buf') with
		the result of the SCSI LOG SENSE command with logpage
		'nr'.
	MTIOLOCATE: Argument is a pointer to a union mt_locate, which should
		have been filled out appropiately by the caller. This will
		execute the SCSI LOCATE command with those argument.
	MTIOREADPOS: Argument is a pointer to a block of memory, which should
		be at least 20 byte long, which will be filled out with the
		result of SCSI READ POSITION command at return of the function.

	MTIOCTOP: Additional subtypes (mt_op in struct mtop)
		MTSETAUDIO:
			mt_count is 1 for audio on, 0 for audio off.
		MTGETPART:
			returns current partition in mt_count
		MTPARTTO:
			sets current partition to mt_count
		MTCRTPART:
			creates a second partition. The size is specified 
			in m_count with the lower 16 bits being the number
			of units, and MTSIZE{,K,M}BYTES as ORed mask for
			the order of magnitude.
			All data on the tape will be lost.
		MTDELPART:
			deletes a second partition. All data on the tape
			will be lost.
		MTGCOMP:
			get compression mode in mt_count (0 means no
			compression)
		MTSCOMP:
			set compression mode from mt_count (0 means no
			compression)
		MTGDECOMP:
			get decompression mode in mt_count (0 means no
			decompression)
		MTSDECOMP:
			set decompression mode from mt_count (0 means no
			decompression)
