Termination and hot-swap backplanes
Justin T. Gibbs
gibbs at scsiguy.com
Fri Mar 1 12:55:37 PST 2002
>The aic7xxx BIOS can see the two disks and can also format them. However,
>when I boot to Linux, the driver (it's the 2.2.20 stock aic7xxx driver)
>sees the disks, but whenever I try to use them, I get parity errors. I
>can't even make partitions on them.
What version of the aic7xxx driver are you using? If it is less than
6.X.X, there is an issue that may cause the driver to get the termination
polarity wrong. You can override the termination polarity using the
stpwlev module option. From the aic7xxx_old driver source:
/*
* Certain motherboard chipset controllers tend to screw
* up the polarity of the term enable output pin. Use this variable
* to force the correct polarity for your system. This is a bitfield variable
* similar to the previous one, but this one has one bit per channel instead
* of four.
* 0 = Force the setting to active low.
* 1 = Force setting to active high.
* Most Adaptec cards are active high, several motherboards are active low.
* To force a 2940 card at SCSI 0 to active high and a motherboard 7895
* controller at scsi1 and scsi2 to active low, and a 2910 card at scsi3
* to active high, you would need to set stpwlev=0x9 (bits 1001).
*
* People shouldn't need to use this, but if you are experiencing lots of
* SCSI timeout problems, this may help. There is one sure way to test what
* this option needs to be. Using a boot floppy to boot the system, configure
* your system to enable all SCSI termination (in the Adaptec SCSI BIOS) and
* if needed then also pass a value to override_term to make sure that the
* driver is enabling SCSI termination, then set this variable to either 0
* or 1. When the driver boots, make sure there are *NO* SCSI cables
* connected to your controller. If it finds and inits the controller
* without problem, then the setting you passed to stpwlev was correct. If
* the driver goes into a reset loop and hangs the system, then you need the
* other setting for this variable. If neither setting lets the machine
* boot then you have definite termination problems that may not be fixable.
*/
--
Justin
To Unsubscribe: send mail to majordomo at FreeBSD.org
with "unsubscribe aic7xxx" in the body of the message
More information about the aic7xxx
mailing list