Date: Mon, 15 May 2000 13:27:54 -0400 From: Doug Ledford <dledford@redhat.com> To: Ulrich Stoecker <ustoecker@iname.com> Cc: AIC7xxx@FreeBSD.ORG Subject: Re: AHA-2742Twin Channel conversion with Linux 2.2.14 Message-ID: <3920339A.3959D7F6@redhat.com> References: <E12qNPU-0000ll-00@linse.usk1.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Ulrich Stoecker wrote: > > Hi, AIC7xxx specialists, > > I have some trouble with my AHA-2742T EISA controller since I tried to add > an external hd (on scsi channel A, external connector) in addition to the > internal one (channel B). > In the BIOS setup channel B is marked to be the primary channel. > However, the external channel (A) allways becomes scsi0 and the first > external disk therefore /dev/sda. Despite of the BIOS setup the internal > disc becomes /dev/sdb on scsi1. > I would like to link the internal scsi-bus to scsi0 and consequently the > first internal disk to /dev/sda. > I tried the option "reverse_scan" but it had no effect on the twin channel > board. > > I'm using Linux 2.2.14 with the aic7xxx driver version 5.1.21 /3.2.4 > compiled into the kernel. > > Thanks in advance for any hint. The linux mid layer SCSI code doesn't allow us to set the second channel on the EISA boards as a primary. I can make it work on all the multi channel PCI controllers because they have different instances of controller chips/functions for each bus and as such are all registered independant of each other, but the aic7770 based controllers use the same instance of a single chip for both channels and both channels are registers at the same time, which forces the ordering you are seeing. If you update your /etc/fstab file to think all the partitions are now on sdb instead of sda and also update the /etc/lilo.conf file to think that the root partition and other items are on /dev/sdb, then you can make things work. Here's the basic steps: 1. With your current setup still in place, update the /etc/fstab file completely. 2. Shutdown the machine 3. Install the new drive 4. Bring the machine up in single user mode. In order to get it to mount the root filesystem, pass the root= option to the lilo boot prompt and use the /dev/sdb<whatever> parameter to tell the kernel that the root partition is now on the second disk instead of the first, also pass the option S on the same lilo boot command line to keep the machine from coming up in multi user mode. 5. Edit the /etc/lilo.conf file, changing all instances of /dev/sda? to /dev/sdb?. 6. Add two new lines to the lilo.conf file in the top portion of options (before you get to the first image= line in the file): disk=/dev/sdb bios=0x80 This will tell lilo that when it puts the lilo boot sector on the master boot record on /dev/sdb, that the BIOS thinks that /dev/sdb is the *first* hard drive in the system and to access the disk as such. 7. Run the /sbin/lilo program to rewrite your master boot record. 8. Reboot, and this time the machine should come up normally with the root and other partitions on the /dev/sdb drive and the /dev/sda drive should be ready for other use. -- Doug Ledford <dledford@redhat.com> http://people.redhat.com/dledford Please check my web site for aic7xxx updates/answers before e-mailing me about problems To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe aic7xxx" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3920339A.3959D7F6>