freebsd-nq/sys
Justin T. Gibbs 22dbd4c64c aic79xx.c:
Allow 500us between pauses in ahd_pause_and_flushwork().
	The maximum we will wait is now 500ms.

	In the same routine, remove any attempt to clear ENSELO.
	Let the firmware do it once the current selection has
	completed.  This avoids some race conditions having to
	do with non-packetized completions and the auto-clearing
	of ENSELO on packetized completions.

	Also avoid attempts to clear critical sections when
	interrups are pending.  We are going to loop again
	anyway, so clearing critical sections is a waste of
	time.  It also may not be possible to clear a critical
	section if the source of the interrupt was a SEQINT.

aic79xx_pci.c:
	Use the Generic 9005 mask when looking for generic 7901B
	parts.  This allows the driver to attach to 7901B parts
	on motherboards using a non-Adaptec subvendor ID.

aic79xx_inline.h:
	Test for the SCBRAM_RD_BUG against the bugs
	field, not the flags field in the softc.

aic79xx.c:
	Cancel pending transactions on devices that
	respond with a selection timeout.  This decreases
	the duration of timeout recovery when a device
	disappears.

aic79xx.c:
	Don't bother forcing renegotiation on a selection
	timeout now that we use the device reset handler
	to abort any pending commands on the target.
	The device reset handler already takes us down
	to async narrow and forces a renegotiation.

	In the device reset handlers, only send a
	BDR sent async event if the status is not
	CAM_SEL_TIMEOUT.  This avoids sending this
	event in the selection timeout case

aic79xx.c:
	Modify the Core timeout handler to verify that another
	command has the potential to timeout before passing off
	a command timeout as due to some other command.  This
	safety measure is added in response to a timeout recovery
	failure on H2B where it appears that incoming reselection
	status was lost during a drive pull test.  In that case,
	the recovery handler continued to wait for the command
	that was active on the bus indefinetly.  While the root
	cause of the above issue is still being determined seems
	a prudent safeguard.

aic79xx_pci.c:
	Add a specific probe entry for the Dell OEM 39320(B).

aic79xx.c:
aic79xx.h:
aic79xx.reg:
aic79xx.seq:
	Modify the aic79xx firmware to never cross a cacheline or
	ADB boundary when DMA'ing completion entries to the host.
	In PCI mode, at least in 32/33 configurations, the SCB
	DMA engine may lose its place in the data-stream should
	the target force a retry on something other than an
	8byte aligned boundary. In PCI-X mode, we do this to
	avoid split transactions since many chipsets seem to be
	unable to format proper split completions to continue
	the data transfer.

	The above change allows us to drop our completion entries
	from 8 bytes to 4.  We were using 8 byte entries to ensure
	that PCI retries could only occur on an 8byte aligned
	boundary.  Now that the sequencer guarantees this by splitting
	up completions, we can safely drop the size to 4 bytes (2
	byte tag, one byte SG_RESID, one byte pad).

	Both the split-completion and PCI retry problems only show
	up under high tag load when interrupt coalescing is being
	especially effective.  The switch from a 2byte completion
	entry to an 8 byte entry to solve the PCI problem increased
	the chance of incurring a split in PCI-X mode when multiple
	transactions were completed at once.  Dropping the completion
	size to 4 bytes also means that we can complete more commands
	in a single DMA (128byte FIFO -> 32 commands instead of 16).

aic79xx.c:
	Modify the SCSIINT handler to defer clearing
	sequencer critical sections to the individual
	interrupt handlers.  This allows us to
	immediately disable any outgoing selections in
	the case of an unexpected busfree so we don't
	inadvertantly clear ENSELO *after* a new selection
	has started.  Doing so may cause the sequencer
	to miss a successful selection.

	In ahd_update_pending_scbs(), only clear ENSELO if
	the bus is currently busy and a selection is not
	already in progress or the sequencer has yet to
	handle a pending selection.  While we want to ensure
	that the selection for the SCB at the head of the
	selection queue is restarted so that any change in
	negotiation request can take effect, we can't clobber
	pending selection state without confusing the sequencer
	into missing a selection.
2004-05-11 20:46:05 +00:00
..
alpha When a denormal underflows to zero, raise an underflow exception. 2004-05-06 09:36:11 +00:00
amd64 Make unnecessary globals static and remove unused includes. 2004-05-06 02:18:58 +00:00
arm Don't declare osigset_t, as it is done in sys/_sigset.h. 2004-05-04 22:38:22 +00:00
boot Convert block comments into C-style that is understood by cpp(1). 2004-04-29 18:58:38 +00:00
cam Quirk for Neuros USB audio device. 2004-05-02 19:24:23 +00:00
coda Device megapatch 5/6: 2004-02-21 21:32:15 +00:00
compat Small timer cleanups: 2004-04-30 20:51:55 +00:00
conf Add a driver for the watchdog timer function present on the LPC interface 2004-05-11 18:21:38 +00:00
contrib This commit was generated by cvs2svn to compensate for changes in r129059, 2004-05-09 03:06:25 +00:00
crypto
ddb Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
dev aic79xx.c: 2004-05-11 20:46:05 +00:00
fs Make vm_page's PG_ZERO flag immutable between the time of the page's 2004-05-06 05:03:23 +00:00
geom Dont try to finish devstat's if the disk pointer is NULL, this can happen 2004-05-11 13:17:40 +00:00
gnu Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
i4b Convert callers to the new bus_alloc_resource_any(9) API. 2004-03-17 17:50:55 +00:00
i386 - Move some macros from icu.h into atpic.c as that is the only place they 2004-05-11 20:23:24 +00:00
ia64 Revert previous commit. We should not get any FP traps from within 2004-05-07 05:35:31 +00:00
isa Trim unused includes. 2004-05-11 20:14:53 +00:00
isofs/cd9660 Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
kern Eliminate a memory leak in kern_symlink() that could occur if 2004-05-11 10:42:02 +00:00
libkern Fixed some style bugs (unsorting of prototypes in previous commit, and 2004-05-05 15:12:55 +00:00
modules Add a driver for the watchdog timer function present on the LPC interface 2004-05-11 18:21:38 +00:00
net Zero the un-used portions of the struct sockaddr data before sending 2004-05-10 15:07:23 +00:00
net80211 Link state change notification of ethernet media to the routing socket. 2004-05-05 15:48:06 +00:00
netatalk Remove redundant call to soisdisconnected() from ddp_abort(), as it 2004-05-05 03:34:37 +00:00
netatm These are changes to allow to use the Intel C/C++ compiler (lang/icc) 2004-03-12 21:45:33 +00:00
netgraph Mode few Bluetooth defines into system include files 2004-05-10 02:24:56 +00:00
netinet o Calculate a number of bytes to copy (cnt) correctly: 2004-05-11 19:14:44 +00:00
netinet6 fix the change of interface in nd6_storelladdr for multicast 2004-04-26 20:31:46 +00:00
netipsec use correct address for SADB_EXT_ADDRESS_DST in key_do_allocsa_policy 2004-05-03 05:15:53 +00:00
netipx Rename dup_sockaddr() to sodupsockaddr() for consistency with other 2004-03-01 03:14:23 +00:00
netkey
netnatm Rename dup_sockaddr() to sodupsockaddr() for consistency with other 2004-03-01 03:14:23 +00:00
netncp Make the process_exit eventhandler run without Giant. Add Giant hooks 2004-03-14 02:06:28 +00:00
netsmb Rename dup_sockaddr() to sodupsockaddr() for consistency with other 2004-03-01 03:14:23 +00:00
nfs Remove advertising clause from University of California Regent's 2004-04-07 05:00:01 +00:00
nfs4client Remove advertising clause from University of California Regent's 2004-04-07 20:46:16 +00:00
nfsclient Make vm_page's PG_ZERO flag immutable between the time of the page's 2004-05-06 05:03:23 +00:00
nfsserver Don't send the available space as is in the FSSTAT call. Under 2004-04-12 13:02:21 +00:00
opencrypto kthread_exit() no longer requires Giant, so don't force callers to acquire 2004-03-05 22:42:17 +00:00
pc98 Mereged from sys/dev/sio/sio.c revision 1.429. 2004-05-06 13:16:45 +00:00
pccard Convert callers to the new bus_alloc_resource_any(9) API. 2004-03-17 17:50:55 +00:00
pci Remove old cy driver files. They have been repo-copied to sys/dev/cy and 2004-05-02 05:38:49 +00:00
posix4
powerpc Add option GEOM_GPT. This brings the ability to have a large number of 2004-05-02 20:40:19 +00:00
rpc Remove advertising clause from University of California Regent's 2004-04-07 05:00:01 +00:00
security Improve consistency of include file guards in src/sys/sys by terminating 2004-05-10 18:38:07 +00:00
sparc64 Prefer explicit ints to implicit ints in the prototype as well as in 2004-05-10 11:17:20 +00:00
sys Improve consistency of include file guards in src/sys/sys by terminating 2004-05-10 18:38:07 +00:00
tools Correct $FreeBSD$ style. 2004-04-16 05:22:11 +00:00
ufs Revert previous change to this file because it breaks some 2004-04-29 15:10:42 +00:00
vm To handle orphaned character device vnodes properly in mmap(), check that 2004-05-11 10:26:37 +00:00
Makefile