Da ich keinen eSATA Port Außen an meinem Notebook habe, benutze ich schon seit längeren eine eSATA express card für externe Festplatten. Bisher lies sich das immer durch folgende Boot Option bewerkstelligen:
pcie_aspm=force pciehp.pciehp_force=1
diese wird einfach in der /etc/default/grub in der Zeile:
GRUB_CMDLINE_LINUX_DEFAULT
zwischen die Anführungszeichen (“”) gesetzt, das könnte dann so aussehen:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pcie_aspm=force pciehp.pciehp_force=1"
Mit Ubuntu 11.10 hab ich aber nun das Problem das die Karte auch mit dieser Option nicht erkannt wird. Nach langem suchen hab ich dann rausgefunden das in der /etc/modules noch folgendes Modul eingetragen werden muss damit die Karte funktioniert:
acpiphp
Das war seither nicht nötig und hat wahrscheinlich mit dem 3.0er Kernel zu tun.
Jetzt wird die eSata Karte wie folgt erkannt (dmesg Ausgabe):
[35353.467141] sata_sil24 0000:04:00.0: version 1.1
[35353.467175] sata_sil24 0000:04:00.0: enabling device (0100 -> 0103)
[35353.467193] sata_sil24 0000:04:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[35353.467379] sata_sil24 0000:04:00.0: setting latency timer to 64
[35353.469078] scsi7 : sata_sil24
[35353.469269] scsi8 : sata_sil24
[35353.469390] ata6: SATA max UDMA/100 host m128@0xf8004000 port 0xf8000000 irq 17
[35353.469399] ata7: SATA max UDMA/100 host m128@0xf8004000 port 0xf8002000 irq 17
[35355.548137] ata6: SATA link down (SStatus 0 SControl 0)
[35357.628120] ata7: SATA link down (SStatus 0 SControl 0)
Dieses vorgehen wird bei den meisten eSATA Karten funktionieren.