Date: Tue, 2 Jan 1996 22:34:13 -0800 (PST) From: "Justin T. Gibbs" <gibbs> To: CVS-committers, cvs-sys Subject: cvs commit: src/sys/pci aic7870.c Message-ID: <199601030634.WAA17360@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
gibbs 96/01/02 22:34:12 Modified: sys/dev/aic7xxx aic7xxx.seq aic7xxx_asm.c aic7xxx_reg.h Log: The long awaited stability patch set for the aic7xxx driver: 1) Use cpp to preprocess the sequencer code. 2) Convert all "magic numbers" to #defines shared by the sequencer and kernel driver via the aic7xxx_reg.h file. (The assembler still needs to be re-written in lex/yacc to allow ~|& type constructions). 3) Raise ATN on parity errors for "in" phases and send an initiator detected error or message-in parity error message as appropriate. 4) Turn off the reselection hardware from the time or a (re)connection to busfree. It seems that some fast targets were able to reconnect before the sequencer was able to see busfree. 5) The message buffer is considered "in-use" when there is a positive length count. The ACTIVE_MSG flag was unnecesary. 6) Properly set SCB_NEXT_WAITING to SCB_LIST_HEAD in scbs being added to the waiting scb list. This is a change in how the list code works to facilitate some planned work in the reset code. 7) The fields in the SCB have be re-arranged to be quad-word aligned. 8) The inb code has been rewritten to catch phasemisses and be more efficient. 9) Go back to "snooping the bus" to determine if the incomming identify message will be followed by a simple queue message. Its much faster than doing a search through the SCBs. 10) Implement better tag range checking for incomming tags. 11) Make sdtr_to_rate more accurate (use 25 instead of 24 in calculations - must have been asleep that night). 12) Rearrange some routines to reduce code complexity and size. 13) Update comments and formatting. 14) Fixed bugs I've forgotten about?? Reviewed by: David Greenman <davidg@FreeBSD.org> Revision Changes Path 1.25 +789 -891 src/sys/dev/aic7xxx/aic7xxx.seq 1.10 +57 -15 src/sys/dev/aic7xxx/aic7xxx_asm.c 1.2 +285 -63 src/sys/dev/aic7xxx/aic7xxx_reg.h Modified: sys/i386/conf files.i386 Log: The long awaited stability patch set for the aic7xxx driver: aic7xxx.seq and aic7xxx.c depend on aic7xx_reg.h Revision Changes Path 1.123 +5 -5 src/sys/i386/conf/files.i386 Modified: sys/i386/eisa aic7770.c eisaconf.c Log: The long awaited stability patch set for the aic7xxx driver: aic7770.c: Simplify the initialization of adapters by pulling all card specific initialization to the card specific modules. eisaconf.c: outb 0x80 instead of 0xc80. The top byte is truncated anyway, and 0x80 was what was intended. Revision Changes Path 1.21 +128 -8 src/sys/i386/eisa/aic7770.c 1.12 +2 -2 src/sys/i386/eisa/eisaconf.c Modified: sys/i386/scsi aic7xxx.c aic7xxx.h Log: The long awaited stability patch set for the aic7xxx driver: Simplify the initialization of adapters by pulling all card specific initialization to the card specific modules. Update comments and fix formating. Pass struct ahc_data*'s to functions instead of unit numbers. Take advantage of the quad word alignment of SCB fields. Adapt to new sequencer changes: 1) Waiting scb list no longer has a tail. 2) Fill the message buffer as appropriate during a parity error. 3) Count all of the SGs involved in a residual instead of just the current one. The reset/abort code still needs a lot of work. Reviewed by: David Greenman <davidg@FreeBSd.org> Revision Changes Path 1.51 +426 -686 src/sys/i386/scsi/aic7xxx.c 1.17 +39 -47 src/sys/i386/scsi/aic7xxx.h Modified: sys/pci aic7870.c Log: The long awaited stability patch set for the aic7xxx driver: Simplify the initialization of adapters by pulling all card specific initialization to the card specific modules. Set the Latency timer and Burst len to good values if thery are not initialized during post or are reset during chip reset. Properly identify and handle external SCB SRAM. The code was false id'ing 255 SCBs on aic7880 chips. Reviewed by: David Greenman <davidg@FreeBSd.org> Revision Changes Path 1.21 +374 -8 src/sys/pci/aic7870.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199601030634.WAA17360>