freebsd-nq/sys/dev
Justin T. Gibbs 92931c12ff Correct/Simplify ignore wide residue message handling
aic7xxx.c:
	In ahc_handle_ign_wide_residue():
	o Use SCB_XFERLEN_ODD SCB field to determine transfer
	  "oddness" rather than the DATA_COUNT_ODD logic.
	  SCB_XFERLEN_ODD is toggled on every ignore wide
	  residue message so that multiple ignore wide residue
	  messages for the same transaction are properly supported.
	o If the sg list has been exausted, the sequencer
	  doesn't bother to update the residual data count
	  since it is known to be zero.  Perform the zeroing
	  manually before calculating the remaining data count.
	o Ensure that SG_LIST_NULL is cleared in the
	  residual sg pointer for "mid-transfer" ignore
	  wide residue cases.
	o Use multibyte in/out macros instead of shifting/masking
	  by hand.

aic7xxx.h:
	Modify the SCB_GET_LUN() macro to mask the lun hardware
	SCB field with LID.  This leaves two bits in the LUN
	field that can be used for other purposes.

aic7xxx.reg:
	Change LID to be 0x3F.  This is the maximum supported
	lun size for non-packetized SCSI.  Map the top bit
	of the lun to SCB_XFERLEN_ODD.  The host must set
	this bit whenever a transfer is an odd length.

	Remove the ODD_SEG bit field that was used to carry the odd
	transfer length information through the SG cache.  This
	is obviated by SCB_XFERLEN_ODD field.

	Remove the DATA_COUNT_ODD scratch ram byte that was used
	dynamicaly compute data transfer oddness.  This is obviated
	by SCB_XFERLEN_ODD field.

aic7xxx.seq:
	Be more careful in our handling of the SCB_LUN field.  It
	must be masked with LID if only lun information is desired.

	Remove all updates to the DATA_COUNT_ODD scratch ram field.
	Remove all uses of ODD_SEG.  These two save quite a few
	sequencer instructions.

	Use SCB_XFERLEN_ODD to validate the end of transfer
	ignore wide residue message case.

aic7xxx_inline.h:
	In ahc_queue_scb(), setup the SCB_XFERLEN_ODD field.

Approved by: RE
2003-05-26 21:24:01 +00:00
..
aac Don't pass pointers to kernel data structures through 32-bit fields 2003-04-28 06:16:20 +00:00
acpica Add some extra #ifdef stubs so that this compiles on 4.8. 2003-05-13 16:59:46 +00:00
adlink Almost the finished article. 2003-04-08 19:12:48 +00:00
advansys I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
agp - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
aha I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
ahb I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
aic Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
aic7xxx Correct/Simplify ignore wide residue message handling 2003-05-26 21:24:01 +00:00
amd I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
amr Use bioq_flush() to drain a bio queue with a specific error code. 2003-04-01 15:06:26 +00:00
an - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
ar Get rid of kvtop(). 2003-04-23 15:40:11 +00:00
asr Include <sys/ioccom.h> instead of <sys/disklabel.h> 2003-04-16 20:46:30 +00:00
ata Print the right position on disk errors 2003-05-19 13:43:12 +00:00
atkbdc AMD64 physical space is much larger than i386, de-i386 the bus_space and 2003-05-12 02:44:37 +00:00
awi Explicitly declare 'int' parameters. 2003-04-21 16:27:46 +00:00
bge - Make this work with PAE. 2003-05-21 07:00:49 +00:00
bktr - Add vm_paddr_t, a physical address type. This is required for systems 2003-03-25 00:07:06 +00:00
buslogic I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
cardbus Ignore the 'must allocate below 1MB' flag for the TPL_BAR_REG. It is 2003-05-24 23:23:41 +00:00
ccd More correct patch: Only call biofinish if we have not already sent 2003-04-14 08:49:54 +00:00
ciss Make ciss usable under PAE 2003-05-21 07:17:06 +00:00
cm - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
cnw - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
cs - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
ct Force PnP devices to set SMIT mode. 2003-05-03 02:04:58 +00:00
cy - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
dc Only use a SIA/SYM media info block if no MII block is detected. 2003-05-15 16:53:29 +00:00
de - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
dec
dgb Make TTYHOG tunable. 2003-03-05 08:16:29 +00:00
digi Make nokqfilter() return the correct return value. 2003-03-03 16:24:47 +00:00
dpt I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
drm Merge from DRI CVS: Disable MTRRs on FreeBSD-stable to work around hangs with 2003-04-26 06:59:38 +00:00
ed - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
eisa Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
em Fix a printf() format error which broke the ia64 GENERIC build. 2003-05-06 03:55:12 +00:00
en Define a link layer MIB for ATM. Most fields of this MIB are needed by 2003-05-05 16:35:52 +00:00
ep Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
ex - Declare ex_devclass in if_ex.c 2003-03-29 15:38:53 +00:00
exca Massive overhaul of exca to help with the isa efforts: 2003-02-14 06:21:18 +00:00
fb Low risk amd64 fix. Use a vm_offset_t for the virtual location of the 2003-05-23 05:10:49 +00:00
fdc Use bioq_flush() to drain a bio queue with a specific error code. 2003-04-01 15:06:26 +00:00
fe Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
firewire Make it compiled on 4-stable. 2003-05-12 00:42:28 +00:00
fxp Always set the hardware parse bit in the IPCB structure when this 2003-05-25 05:04:26 +00:00
gem Miscellaneous fixes: 2003-05-15 16:57:55 +00:00
gfb - Add vm_paddr_t, a physical address type. This is required for systems 2003-03-25 00:07:06 +00:00
gx - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
hea Explicitly declare 'int' parameters. 2003-04-21 16:27:46 +00:00
hfa - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
hifn o add crypto driver glue for using the new rndtest driver/module; this is 2003-03-11 22:47:06 +00:00
hme - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
ic - Clean up function calling conventions. 2003-03-28 06:27:08 +00:00
ichsmb typo. 2002-10-18 12:06:01 +00:00
ida I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
idt - Deal with netisr changes. 2003-03-29 15:55:04 +00:00
ie - Move driver to newbus. 2003-03-29 13:36:41 +00:00
iicbus Update netisr handling; Each SWI now registers its queue, and all queue 2003-03-04 23:19:55 +00:00
iir Import latest changes from the vendor. This also is reported to fix the 2003-04-25 05:37:04 +00:00
ips Add the 'ips' driver for the IBM (now Adaptec) ServeRAID controller 2003-05-11 06:36:49 +00:00
isp Add an explanatory comment about what operational modes in xfwopt are. 2003-03-25 07:02:45 +00:00
ispfw Roll to latest level. 2003-02-16 01:30:31 +00:00
joy Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
kbd AMD64 physical space is much larger than i386, de-i386 the bus_space and 2003-05-12 02:44:37 +00:00
lge - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
lmc Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
lnc - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
mc146818
mca Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
mcd Don't include <sys/disklabel.h> 2003-04-16 20:57:35 +00:00
md Use vm_object_deallocate(), not vm_pager_deallocate(), to destroy a 2003-05-16 07:28:27 +00:00
mii Something I missed in my tree. 2003-05-04 02:03:20 +00:00
mk48txx Add a driver back end for the Mostek MK48T02, MK48T08 and MK48T59 2002-04-04 23:44:42 +00:00
mlx Use bioq_flush() to drain a bio queue with a specific error code. 2003-04-01 15:06:26 +00:00
mly Centralize the devstat handling for all GEOM disk device drivers 2003-03-08 08:01:31 +00:00
mpt I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
mse Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
musycc Including <sys/stdint.h> is (almost?) universally only to be able to use 2003-03-18 08:45:25 +00:00
my - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
ncv Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
nge - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
nmdm Make TTYHOG tunable. 2003-03-05 08:16:29 +00:00
nsp o Changes to support NEWCARD. 2002-11-28 01:09:29 +00:00
null Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
ofw Use __FBSDID rather than rcsid[]. 2003-04-03 21:36:33 +00:00
pccard Sync to 1.50 2003-04-27 03:32:09 +00:00
pccbb Back out accidentally committed debugging 2003-05-04 23:58:37 +00:00
pcf Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
pci Calculate routed interrupts using the slot number from the device and 2003-05-22 17:45:26 +00:00
pcic More low-hanging fruit: kill caddr_t in calls to wakeup(9) / [mt]sleep(9). 2003-03-02 16:54:40 +00:00
pdq - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
ppbus Fix a printf warning from the recent CAM changes. 2003-05-01 19:46:21 +00:00
ppc Fix some easy, global, lint warnings. In most cases, this means 2003-04-30 12:57:40 +00:00
pst Pull the pst driver out from under GAINT. 2003-04-28 08:10:27 +00:00
puc add support for NetMos 4S0P PCI: 4S, 0P 2003-05-14 09:37:46 +00:00
raidframe Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
random Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
ray Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
rc Make TTYHOG tunable. 2003-03-05 08:16:29 +00:00
rndtest FIPS 140-2 rng data tester for h/w crypto devices. This driver periodically 2003-03-11 22:54:44 +00:00
rp Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
sab Match "serial" as well as "se". 2003-03-31 18:21:52 +00:00
sbni - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
sbsh cosmetic style fixes 2003-04-15 17:26:28 +00:00
scd Don't include <sys/disklabel.h> 2003-04-16 20:57:35 +00:00
sf Use newly minted device_is_attached rather than device_is_alive to see 2003-04-21 18:34:04 +00:00
si Make TTYHOG tunable. 2003-03-05 08:16:29 +00:00
sio Add E-Tech ISA PnP modem ID. 2003-05-16 04:04:04 +00:00
sk Use newly minted device_is_attached rather than device_is_alive to see 2003-04-21 18:34:04 +00:00
smbus Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
sn - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
snc Fix off-by-one bug. 2003-05-03 01:47:38 +00:00
snp Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
sound Fix lock order reversal when opening device and chn_reset fails. 2003-05-01 16:31:21 +00:00
speaker Retire sys/pc98/pc98/spkr.c 2003-03-24 21:01:54 +00:00
sr Use bus_space*() instead of in*() and out*(). 2003-04-23 20:22:32 +00:00
stg Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
streams Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
sym I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
syscons Trivial addition of __amd64__ to the ifdefs for platforms that use 2003-05-09 18:24:40 +00:00
tdfx - Add vm_paddr_t, a physical address type. This is required for systems 2003-03-25 00:07:06 +00:00
tga Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
ti Use newly minted device_is_attached rather than device_is_alive to see 2003-04-21 18:34:04 +00:00
trm I deserve a big pointy hat for having missed all those references 2003-04-10 23:50:06 +00:00
twe Use bioq_flush() to drain a bio queue with a specific error code. 2003-04-01 15:06:26 +00:00
tx Convert the tx(4) driver to use the busdma API. 2003-04-20 18:08:00 +00:00
txp - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
ubsec recognize the Sun Crypto 5821 and Crypto 1K cards; 2003-04-27 04:26:22 +00:00
usb Quirk for Hitachi DVD USB drive. It returns "invalid field in cdb" for 2003-05-21 00:22:07 +00:00
vinum Change the way the plex lock mutexes work. Previously they were part 2003-05-23 01:15:55 +00:00
vr Use newly minted device_is_attached rather than device_is_alive to see 2003-04-21 18:34:04 +00:00
vx - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
wds Don't include <sys/disklabel.h> 2003-04-16 20:57:35 +00:00
wi Don't hold a driver lock across bus_teardown_intr. Jhb points out 2003-04-29 03:22:39 +00:00
wl Get wlread() closer to working. Use m->m_len as the initial value for 2003-04-17 17:51:24 +00:00
xe Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
zs Note that MAJOR_AUTO is now the default if d_maj is not initialized. This 2003-03-09 11:03:45 +00:00