My system:
Adaptec AHA-3940AU (narrow) two channel adapter card.
Adaptec Bios 1.34.1
Seagate Barracuda 18XL ST318416N (narrow) SCSI hard drive.
SuSE Linux v6.3 kernel 2.2.13
Phoenics Bios 4.0 release 4.0E
HP PC with Pentium 2 400MHz, 128MBytes RAM and Bios 02.01
On channel B (SCSI1) I have one external device, Iomega Zip250 (ID5)
with termination
enabled.
I have just bought a Seagate Barracuda ST318416N 18GByte additional hard
drive which I have
attached to channel A (SCSI0). It has jumpers set to ID0. It is not on
the end of the SCSI bus
and so is not terminated. The end of the SCSI bus is terminated witha
Belkin active terminator.
(I've tried setting termination on the device, putting it at the end of
the bus and removing the
active terminator. No joy.)
I am booting from an another (non-SCSI) disk.
Before OS boot, the system correctly recognises the ST318416N and the
channel and ID.
When LILO begins the OS installation I get the following messages.
SCSI0 Aborting due to time out
SCSI PID2 SCSI0 Chan0 ID0 LUN0 Test ...then some numbers...
SCSI Host 0 abort (pid2) timed out - resetting
SCSI Bus reset for host 0 channel 0
SCSI Host 0 abort (pid2) trying harder
...and so on...
I have changed the internal ribbon cable. Ensured pin-1-orientation.
Made sure the cables
adhere to the appropriate standards and are the correct length.
I have tried SCSISelect sync=no, max rate=5 and this didn't help. (I've
now returned to the
defaults.)
The adapter is in the first PCI slot and this is scanned first.
This appears to be quite a common problem (see Linux news groups).
The termination is fine. The adapter is fine. The drive is fine. The
cable lengths are fine.
This all points to the aic7xxx driver and the options it employs. It
appears that I need to add one
of the following commands. They are all to do with the aic7xxx chipset
driver. Either:
1. at the LILO prompt
LILO boot: linux aic7xxx=seltime:0,no_reset,extended,verbose:0x39 (is
this syntax right?)
2. in the /etc/lilo.conf file
append "aic7xxx='seltime:0.no_reset.extended.verbose:0x39'" (although
the various quotes syntax may be wrong and I could do with help, should
these be commas or periods?)
3. in the /etc/modules.conf file
allias scsi_hostadapter off (...why?)
options aic7xxx aic7xxx=seltime:0,no_reset,extended,verbose:0x39 (commas
or periods?)
...or...
alias scsi_hostadapter off
post-install aic7xxx rmmod aic7xxx
post-remove aic7xxx modprobe aic7xxx
aic7xxx=seltime:0,no_reset,extended,verbose:0x39
NONE of these has any effect. Even the command to the boot prompt is
being ignored! During boot up I get the following messages.
...some text, then...
loading module aic7xxx
using /lib/modules/2.2.13/aic7xxx.o
...some text, including stuff about scsi0 and scsi1 which is fine,
then this again...
loading module aic7xxx
using /lib/modules/2.2.13/aic7xxx.o
insmod named module already exists
No-where are any of my options being echoed.
It looks like the module is being loaded twice and the first loading of
the module does not use any of the options I have provided. Where can
this be happening? How can I force the kernel to read my options and not
some which are buried elsewhere?
Furthermore, I'm a little confused. In /etc/rc.config theres the
following:
INITRD_MODULES="aic7xxx aic7xxx"
What the hell is this?
And finally, the chip on my AHA-3940AU is an aic7870 but when I look at
the c source file aic7xxx.c it suggests that the chip will be either an
aic7872 or an aic7895. Will this make a difference? Should I be using a
different aic7xxx.c file? Where will I get that from? How do I compile
it and use it? If I need to compile my own kernel I'm going to need an
idiots guide. Any pointers?
HELP!
Marcus
marcus.naraidoo.vcf < 1K Download |