1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-12 09:58:36 +00:00
freebsd/sys
Scott Long 4d22994e96 Bring in many bugfixes and changes obtained from formal testing:
aic7xxx.c:
        aic7xxx.h:
        aic7xxx.reg:
        aic7xxx.seq:
                Bring in the protocol violation handler from the U320
                driver and replace the NO_IDENT sequencer interrupt code
                with the PROTO_VIOLATION code.  Support for this code
                required the following changes:

                SEQ_FLAGS:
                        IDENTIFY_SEEN -> NOT_IDENTIFIED
                        Added NO_CDB_SENT

                SCB_CONTROL:
                        TARGET_SCB == STATUS_RCVD for initiator mode

                scb->flags:
                        Added SCB_TARGET_SCB since we cannot rely on
                        TARGET_SCB as a target/initiator differentiator
                        due to it being overloaded in initiator mode to
                        indicate that status has been received.

        aic7xxx.seq:
                Move data fifo CLRCHN to mesgin_rdptrs which is a safer
                location for doing this operation.  This also saves a
                sequencer instruction.

        aic7xxx.c:
        aic7xxx.h:
                Change ahc/ahd_upate_neg_request() to take a "negotiation
                type" enum that allows us to negotiate:
                        o only if the goal and current parameters differ.
                        o only if the goal is non-async
                        o always - even if the negotiation will be for async.
        aic7xxx.seq:
                Reset the FIFO whenever a short CDB transfer occurs
                so that the FIFO contents do not corrupt a future CDB
                transfer retry.

                Add support for catching the various protocol violations
                handled by ahc_handle_protocol_violation.

                Reformat some comments.

        aic7xxx.c:
        aic7xxx.h:
                Just for safety, have the aic7xxx driver probe
                the stack depth.

        aic7xxx.c:
        aic7xxx.h:
                Save and restore stack contents during diagnostics.
                Some chip variants overwrite stale entries on a
                stack "pop".

                Don't use 0 to probe the stack depth.  0 is the typical
                value used to backfill the stack if entries are overwritten
                on a "pop".

        aic7xxx.h:
                Add a missing typedef.

                Collapse SCB flag entries so they are bit contiguous.

                Add AHD_ULTRA2_XFER_PERIOD for narrow fallback calculations

        aic7xxx.c:
                Don't panic (as a diagnostic to catch bugs) if we decided to
                force the renegotiation of async even if we believe we are
                already async.  This should allow us to negotiate async instead
                of the full user goal rate during startup if bus resets are
                disabled.

                Add a space to the end of the ahc/ahd_print_devinfo routines
                so that it behaves as expected by the code that uses it.

                Only force a renegotiation on a selection timeout
                if the SCB was valid.  Doing otherwise may be dangerous
                as the connection was not valid for an unknown reason.

                Add additional diagnostic output to ahc_dump_card_state(),
                and have it use the register pretty printing functions.

                Update ahc_reg_print() to handle a NULL cur_col.

                Add a newline to ahc_dump_card_state() output.

                Bring back "use_ppr".  We need to use_ppr anytime
                doppr is true or we have non-zero protocol options.
                The later case was not handled in the recent removal
                of use_ppr.

                Move a comment and remove a useless clearing of use_ppr.

                Don't disable ENBUSFREE when single stepping on
                a DT capable controller.  We cannot re-enable unexpected
                busfree detection, so we must clear BUSFREE on each
                step instead.

                Correct the lookup of the SCB ID in ahc_handle_proto_error.

                Remove a diagnostic printf.
                Remove unecessary restoration of the STACK for older
                chips.

Approved by:	re (blanket)
2002-11-30 19:30:09 +00:00
..
alpha Under certain circumstances, we were calling kmem_free() from 2002-11-22 23:57:02 +00:00
amd64 Assert that the page queues lock is held in pmap_page_exists_quick(). 2002-11-30 17:46:59 +00:00
arm
boot Remove a left-over virtual mapping of uncached I/O port space. 2002-11-28 03:25:51 +00:00
cam Release the reference to the peripheral if returning a error. 2002-11-29 15:40:10 +00:00
coda
compat Regenerate after adding syscalls. 2002-11-16 23:48:14 +00:00
conf Reclaim major number 182 which I allocated for mdsio. It was decided 2002-11-28 04:29:52 +00:00
contrib Resolve conflicts arising from the ACPI CA 20021118 import. 2002-11-27 18:09:20 +00:00
crypto
ddb
dev Bring in many bugfixes and changes obtained from formal testing: 2002-11-30 19:30:09 +00:00
fs
geom Remember to update the providers idea of its size when we reconfigure 2002-11-20 20:12:52 +00:00
gnu
i4b network interface and link layer changes: 2002-11-15 00:00:15 +00:00
i386 Assert that the page queues lock is held in pmap_page_exists_quick(). 2002-11-30 17:46:59 +00:00
ia64 Implement bus_space_subregion(). Identical to i386. 2002-11-29 20:14:03 +00:00
isa
isofs/cd9660
kern Remove a race condition / deadlock from snapshots. When 2002-11-30 19:00:51 +00:00
libkern
modules Unhook LOMAC kernel module since the functionality is now provided by 2002-11-26 17:53:27 +00:00
net Move fw_one_pass from ip_fw2.c to ip_input.c so that neither 2002-11-20 19:07:27 +00:00
netatalk
netatm
netgraph fixes for this driver: 2002-11-26 18:30:45 +00:00
netinet Move fw_one_pass from ip_fw2.c to ip_input.c so that neither 2002-11-20 19:07:27 +00:00
netinet6
netipsec
netipx
netkey
netnatm
netncp
netns
netsmb Fix a fatal typo introduced in revision 1.13 that caused the mbuf chains to 2002-11-26 23:53:28 +00:00
nfs
nfsclient reapply 1.26 through 1.28. 2002-11-20 15:21:06 +00:00
nfsserver
opencrypto
pc98 MFi386: revision 1.550. 2002-11-17 02:57:06 +00:00
pccard MFp4: 2002-11-27 06:04:49 +00:00
pci Xircom cards store the MAC address in the CIS, so get it from the new 2002-11-27 07:04:10 +00:00
posix4 Rework the sysconf(3) interaction with aio: 2002-11-17 04:15:34 +00:00
powerpc Under certain circumstances, we were calling kmem_free() from 2002-11-22 23:57:02 +00:00
rpc
security Correct two warnings by staticizing a function and removing an unused 2002-11-26 17:38:25 +00:00
sparc64 Add page queues locking to vunmapbuf(). 2002-11-24 21:13:34 +00:00
sys Remove a race condition / deadlock from snapshots. When 2002-11-30 19:00:51 +00:00
tools
ufs Add a check to disable the previous patch so that future filesystems 2002-11-30 19:04:57 +00:00
vm Lock page field accesses in mincore(). 2002-11-28 08:01:39 +00:00
Makefile