Re: C3600, sata controller

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

 



> I had listed these cards because they are PCI64 and the Adaptec site didn't say Intel
> architecture was required.

Adaptec AAR-2410SA was tested on x86, C3600, and Apple PowerMac G4
MDD. It worked only on x86.

01:10:15.0 RAID bus controller: Adaptec AAC-RAID (rev 01)
        Subsystem: Adaptec AAR-2410SA PCI SATA 4ch (Jaguar II)
        Flags: 66MHz, slow devsel, IRQ 58
        Memory at 84000000 (32-bit, prefetchable) [size=64M]
        Expansion ROM at 80088000 [disabled] [size=32K]
        Capabilities: [80] Power Management version 2

Alan Cox explained some reasons for this. His email is long, and not
public, so I summarize what I have understood.

as soon as the computer bootstraps, the firmware in its BIOS scans
every PCI-peripherical for any BIOS-extension, it finds then there is
a BIOS-extension ROM on the SATA-card, and it loads and executes it:
the flash-chip on the card contains x86 opcode! The ROM initializes
some features on the SATA-card and loads and bootstraps a firmware
there (the firmware is contained in the flash, but it somehow requires
to be launched by the PC, dunno how/what), the PC goes ahead and
bootstrap the OS-loader (Grub? Lilo? ... this stuff), the Linux kernel
is loaded and bootstrapped too, the kernel is now running, and it
probes for the SATA-controller device and it finds it, so the
kernel-driver finds the SATA-controller already configured and - it's
running its own firmware - so, when the kernel issues commands, it
responds properly!

So, if you put the Adaptec AAR-2410SA SATA-card into a non-x86
computer ... the BIOS extension is not expected, and the Linux kernel
does not find the SATA correctly configured-card, in fact, the kernel
complains the card is not even found running its own firmware running,
and this can't be fixed unless you do a full reverse-engineering of
flash-code, in order to create a new kernel-driver able to directly
initialize the card instead of waiting for the job done by the
PC-BIOS.

hardware RAID cards are usually problematic for the same reason.



[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux