Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Jun 1995 02:15:48 -0700
From:      David Greenman <davidg>
To:        CVS-commiters, cvs-sys
Subject:   cvs commit: src/sys/pci aic7870.c
Message-ID:  <199506040915.CAA04938@freefall.cdrom.com>

next in thread | raw e-mail | index | archive | help
davidg      95/06/04 02:15:46

  Modified:    sys/i386/scsi  aic7xxx.c aic7xxx.h
               sys/pci   aic7870.c
  Log:
  Fixes from Justin:
  
  1) Fixes tagged queuing for a large number of drives (Seagate, Fujitsu and
     Quantum Grand Prix drives have been tested successfully).  The core of
     the patch is to setup an I_T_L nexus (initiator_target_lun) instead
     of an I_T_L_T (initiator_target_tun_tag) nexus for all request sense
     messages.  It seems that these drives attempt to hold off tagged requests
     until the sense is retrieve, causeing them to return BUSY or QUEUE_FULL
     status if you do an I_T_L_T nexus.  This patch should only affect those
     who use the AHC_TAGENABLE kernel config option.
  
  2) Adds support for the aic7850 motherboard SCSI controller.  THe 7850 is
     software compatible with the 7870 chip except that it has only 3 SCBs
     (ugh) and of course a differnt PCI ID string.
  
  3) Move some common initialization code above the SEQINT switch case in the
     interrupt routine to avoid code duplication.  Use be consistent and always
     use u_char instead of "unsigned char" (I've only done this for this section
     of code).
  
  4) Make debugging printfs uniform and always inform the user of the unit
     channel and target of the error if possible.  Use sc_print_addr when
     possible (we have a sc_link structure) so that we get the actuall device
     name printed.
  
  Submitted by:	Justin Gibbs



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199506040915.CAA04938>