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>