Skip site navigation (1)Skip section navigation (2)
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>