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>
