PROBLEM: aic79xx probe order for multi-channel controllers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Many onboard scsi controllers are multi-channel and use channel "B" as 
internal bus. Anything on the external channel ("A") is attached before 
the internal devices.
This applies e.g. to Intel SR1300 Servers with AIC-7902 U320 chipset.

The "reverse_scan" option doesn't seem to effect the multi-channel
probe order.

In the Adaptec BIOS you can specify the boot channel. This channel 
should be scanned first. This works fine with AIC-78xx controllers.
The aic79xx driver ignores this setting. Looking at the code, I found it 
disabled.

/usr/src/kernel-source-2.6.8/drivers/scsi/aic7xxx/aic79xx_osm.c:
*snip*
int
ahd_softc_comp(struct ahd_softc *lahd, struct ahd_softc *rahd)
{
        int     value;

        /*
         * Under Linux, cards are ordered as follows:
         *      1) PCI devices that are marked as the boot controller.
         *      2) PCI devices with BIOS enabled sorted by 
bus/slot/func.
         *      3) All remaining PCI devices sorted by bus/slot/func.
         */
#if 0
        value = (lahd->flags & AHD_BOOT_CHANNEL)
              - (rahd->flags & AHD_BOOT_CHANNEL);
        if (value != 0)
                /* Controllers set for boot have a *higher* priority */
                return (value);
#endif
*snip*

Affected aic79xx driver versions are at 1.3.11 up to the latest Adaptec 
version 2.0.12.

Removing the "# if 0 ... endif" statements causes the boot channel 
probed first.


Christian

-- 
---=================================================================---
Christian Schoeniger, SYSADMIN, FES GmbH - Fahrzeug-Entwicklung Sachsen
phone: +49 375 56 60 254 fax: +49 375 56 60 92254 http://www.fes-aes.de
---===> I haven't lost my mind; I know exactly where I left it. <===---
-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux