From owner-cvs-sys Tue Jul 4 14:14:53 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id OAA06698 for cvs-sys-outgoing; Tue, 4 Jul 1995 14:14:53 -0700 Received: (from gibbs@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id OAA06687 ; Tue, 4 Jul 1995 14:14:46 -0700 Date: Tue, 4 Jul 1995 14:14:46 -0700 From: "Justin T. Gibbs" Message-Id: <199507042114.OAA06687@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/i386/scsi aic7xxx.c aic7xxx.h Sender: cvs-sys-owner@freebsd.org Precedence: bulk gibbs 95/07/04 14:14:46 Modified: sys/dev/aic7xxx aic7xxx.seq Log: Change SCB_LIST_NULL to 0xff from 0x10 to allow for 255 commands. This is needed for 3940 support. Have tagged commands look to see if a target is "busy" with a non tagged command before executing. This prevents overlapped tagged and non tagged commands which can happen since request sense commands are not tagged. Modified: sys/i386/conf files.i386 Log: Add entry for i386/scsi/93cx6.c, the file that handles serial eeprom routines for the aic7xxx driver. If and when other drivers start to access similar serial eeproms, this file should probably be moved. Modified: sys/i386/isa aic7770.c sys/i386/scsi aic7xxx.c aic7xxx.h Log: First pass cleanup of this driver. This pass does not include the sequencer optimizations I have been working on yet, but does bring in some bug fixes and performance improvments that were easy to regression test: Setup the data fifo threshold and bus off timing correctly for 27/284x cards. Users of these adapters with fast periferals (greater than 5MB/s) will notice a big performance difference. (Sometimes as large as going from 3.7->8.3MB/s). Fix handling of the active target flags. Some of the outbs where missing the base offset in the abort code. The abort code still needs lots of work. Support 3940 controllers, but only with 16 SCBs for now. Eventually I'll add support for all 255, but I need to find a tester for the code first since we have to enable the cards external SRAM to do this. Add Dan Eischen's serial eeprom reading facilities. This allows the 2940 adapters to pull additional information left over from SCSI-Select right out out of the configuration seeprom. If the BIOS is disabled on 274x controllers, reset all target parameters to there defaults since you can't rely on what is stored in scratch ram. Report motherboard controllers as such. Stick the first SG address and count into the SCB data and count areas for all transfers in preparation of a later sequencer optimization. Keep track of which targets can are allowed to have the disconnection priveledge since this will be handled by the kernel driver in the future. If a target issues a message reject in response to a tagged message, disable tagged queuing for that target. Some seagates say they can do tagged queuing, but lie, and its a shame to have to disable tagged queuing on all devices just because you have one that can't cope.