freebsd-dev/sys/cam/scsi
Kenneth D. Merry 260cc4834d Add support to CAM for devices with more than 2^32 blocks. (2TB if you're
using 512 byte blocks).

cam_ccb.h:	Bump up volume_size and cylinders in ccb_calc_geometry to
		64 bits and 32 bits respectively, so we can hold larger
		device sizes.  cylinders would overflow at about 500GB.
		Bump CAM_VERSION for this change.  Note that this will
		require a recompile of all applications that talk to the
		pass(4) driver.

scsi_all.c:	Add descriptions for READ/WRITE(16), update READ/WRITE(12)
		descriptions, add descriptions for SERVICE ACTION IN/OUT.
		Add a new function, scsi_read_capacity_16(), that issues
		the read capacity service action.  (Necessary for arrays
		larger than 2^32 sectors.)  Update scsi_read_write() to use
		a 64 bit LBA and issue READ(16) or WRITE(16) if necessary.
		NOTE the API change.  This should be largely transparnet
		to most userland applications at compile time, but will
		break binary compatibility.  The CAM_VERSION bump, above,
		also serves the purpose of forcing a recompile for any
		applications that talk to CAM.

scsi_all.h:	Add 16 byte READ/WRITE structures, structures for 16 byte
		READ CAPACITY/SERVICE ACTION IN.  Add scsi_u64to8b() and
		scsi_8btou64.

scsi_da.c:	The da(4) driver probe now has two stages for devices
		larger than 2TB.  If a standard READ CAPACITY(10) returns
		0xffffffff, we issue the 16 byte version of read capacity
		to determine the true array capacity.  We also do the same
		thing in daopen() -- use the 16 byte read capacity if the
		device is large enough.

		The sysctl/loader code has also been updated to accept
		16 bytes as a minimum command size.
2003-04-30 00:35:22 +00:00
..
scsi_all.c Add support to CAM for devices with more than 2^32 blocks. (2TB if you're 2003-04-30 00:35:22 +00:00
scsi_all.h Add support to CAM for devices with more than 2^32 blocks. (2TB if you're 2003-04-30 00:35:22 +00:00
scsi_cd.c Use bioq_flush() to drain a bio queue with a specific error code. 2003-04-01 15:06:26 +00:00
scsi_cd.h Fix ATAPI/USB/Firewire CDROM drive handling in cd(4) and hopefully fix 2003-02-21 06:19:38 +00:00
scsi_ch.c Allocate the devstat structure with devstat_new_entry(). 2003-03-08 21:44:46 +00:00
scsi_ch.h
scsi_da.c Add support to CAM for devices with more than 2^32 blocks. (2TB if you're 2003-04-30 00:35:22 +00:00
scsi_da.h
scsi_dvcfg.h Add PC-Card/ISA SCSI host adpater drivers from NetBSD/pc98 2000-10-23 12:55:51 +00:00
scsi_iu.h Add definitions for the task management codes sent in SPI4 2003-01-20 18:05:46 +00:00
scsi_low_pisa.c o Add KLD support for scsi_low. 2001-12-15 12:32:23 +00:00
scsi_low_pisa.h Remove __P. 2002-03-20 08:56:31 +00:00
scsi_low.c Centralize the devstat handling for all GEOM disk device drivers 2003-03-08 08:01:31 +00:00
scsi_low.h use __packed. 2002-09-23 18:54:32 +00:00
scsi_message.h scsi_message.h: 2002-06-05 19:05:01 +00:00
scsi_pass.c Allocate the devstat structure with devstat_new_entry(). 2003-03-08 21:44:46 +00:00
scsi_pass.h Rewrite of the CAM error recovery code. 2001-03-27 05:45:52 +00:00
scsi_pt.c Use bioq_flush() to drain a bio queue with a specific error code. 2003-04-01 15:06:26 +00:00
scsi_pt.h Spell declarations correctly. 2001-01-12 02:49:40 +00:00
scsi_sa.c Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
scsi_sa.h Spell declarations correctly. 2001-01-12 02:49:40 +00:00
scsi_ses.c Centralize the devstat handling for all GEOM disk device drivers 2003-03-08 08:01:31 +00:00
scsi_ses.h
scsi_targ_bh.c Consolidate MIN/MAX macros into one place (param.h). 2003-02-02 13:17:30 +00:00
scsi_target.c Make nokqfilter() return the correct return value. 2003-03-03 16:24:47 +00:00
scsi_targetio.h New SCSI target emulator code 2002-11-22 22:55:51 +00:00