[2552] in linux-scsi channel archive

home help back first fref pref prev next nref lref last post

Re: Pinnacle Appex on a Adaptec 2940

daemon@ATHENA.MIT.EDU (Kai M{kisara)
Sun Sep 28 03:45:39 1997

Date: 	Sun, 28 Sep 1997 10:31:02 +0300 (EET DST)
Reply-To: Kai.Makisara@metla.fi
In-Reply-To: <XFMail.970927105111.m_soriano@dapsys.ch>
From: Kai M{kisara <makisara@abies.metla.fi>
To: Manuel Soriano <m_soriano@dapsys.ch>
Cc: Scsi list <linux-scsi@vger.rutgers.edu>

On Sat, 27 Sep 1997, Manuel Soriano wrote:

> Hello All
> 
> I am running on a 2.0.30 kernel with 2 Adaptec 2940 (1 AU & 1 UW)
> 
> In the first card (UW) all disk (sda, sdb, etc..)
> In the second card (AU) 1 Pinnacle Appex MO
> 
> When booting the cards are  scanned correctly by the bios of the system,
> lilo starts correctly the kernel (first partition on first disk on first
> controller), but Linux when assign the devices, the sda get to the MO
> (first device ID != 0 on the SECOND controler) and the sdb goes to the
> boot disk @:-( (the system crash, root partitions is not found)
> 
The aic7xxx.c driver finds the PCI cards primarily based on the array:

    struct
    {
      unsigned short      vendor_id;
      unsigned short      device_id;
      aha_chip_type       chip_type;
      aha_chip_class_type chip_class;
    } const aic7xxx_pci_devices[] = {
      {PCI_VENDOR_ID_ADAPTEC, PCI_DEVICE_ID_ADAPTEC_7871, AIC_7871,
AIC_787x},
      {PCI_VENDOR_ID_ADAPTEC, PCI_DEVICE_ID_ADAPTEC_7850, AIC_7850,
AIC_785x},
..

The original driver has ascending numerical order which means that the
AU with 7861 gets recognized before UW with 7881. The example above is from
my system where I have modified the driver so that my AHA2940 connected to
the system disks gets recognized before the card connected to "secondary"
devices. You can move the line defining 7881 to the top of the array and
after remaking the kernel your problem should be solved.

	Kai

home help back first fref pref prev next nref lref last post