openSuSE-11.4-x86_64, ASRock P55 Extreme4: ATA-Festplatten nicht erkannt

. 2011-08-10
Hi!

Ich moechte openSuSE-11.4-x86_64 auf 2 Hardwareplattformen HWP1,HWP2
installieren. Bei und nach der Installation auf HWP2 traten Probleme
auf: die ATA-Geraete wurden unter Linux nicht erkannt.

Detailbeschreibung:

HWP1

  • Motherboard Gigabyte GA-P35-DS4
  • 1x HDD S-ATAII
  • 1x HDD ATA Maxtor 4D040H2
  • 1x DVDRW ATA Sony DW-U18A

HWP2

Die Installation von openSuSE-11.4-x86_64 lief auf HWP1 reibungslos,
das System bootete und alle Geraete waren verfuegbar:

  • device nodes for HDDs:
    user@host # ls -Al /dev/sd{a,b}
    brw-rw---- 1 root disk 8, 0 6. Aug 23:11 /dev/sda
    brw-rw---- 1 root disk 8, 16 6. Aug 23:11 /dev/sdb
  • device nodes for DVDRW:
    /dev/{sr0,cdrom,cdromrw,dvd,dvdrw}
  • yast2 (Hardware) zeigt korrekt alle S-ATA-/ATA-Geraete an:
    o unter Blockgeraete beide Festplatten (/dev/sd{a,b}) und DVDRW (/dev/sdc)
    HDD S-ATA: driver : ata_piix
    pci path: pci-0000:00:1f.2-scsi-0:0:0:0
    HDD ATA : driver : pata_jmicron
    pci path: pci-0000:03:00.1-scsi-0:0:0:0
    DVDRW ATA: driver : pata_jmicron
    pci path: pci-0000:03:00.1-scsi-0:0:1:0
    o unter ATA beide Festplatten (/dev/sd{a,b})
    o unter CD-ROM das DVDRW (/dev/sr0)
  • hwinfo zeigt korrekt alle S-ATA- und ATA-Geraete an:
    HDD S-ATA
    pci device: name = 0000:00:1f.2
    path = /devices/pci0000:00/0000:00:1f.2
    modalias = “pci:v00008086d00002920sv00001458sd0000B002bc01sc01i8a”
    class = 0x1018a
    vendor = 0x8086
    device = 0x2920
    subvendor = 0x1458
    subdevice = 0xb002
    irq = 19
    res[0] = 0x1f0 0x1f7 0x110
    res[1] = 0x3f6 0x3f6 0x110
    res[2] = 0x170 0x177 0x110
    res[3] = 0x376 0x376 0x110
    res[4] = 0xf000 0xf00f 0x40101
    res[5] = 0xf100 0xf10f 0x40101
    config[64]
    HDD ATA
    pci device: name = 0000:03:00.1
    path = /devices/pci0000:00/0000:00:1c.4/0000:03:00.1
    modalias = “pci:v0000197Bd00002363sv00001458sd0000B000bc01sc01i85”
    class = 0x10185
    vendor = 0x197b
    device = 0x2363
    subvendor = 0x1458
    subdevice = 0xb000
    irq = 17
    res[0] = 0xb000 0xb007 0x40101
    res[1] = 0xb100 0xb103 0x40101
    res[2] = 0xb200 0xb207 0x40101
    res[3] = 0xb300 0xb303 0x40101
    res[4] = 0xb400 0xb40f 0x40101
    config[64]
    DVDRW ATA:
    pci device: name = 0000:03:00.1
    path = /devices/pci0000:00/0000:00:1c.4/0000:03:00.1
    modalias = “pci:v0000197Bd00002363sv00001458sd0000B000bc01sc01i85”
    class = 0x10185
    vendor = 0x197b
    device = 0x2363
    subvendor = 0x1458
    subdevice = 0xb000
    irq = 17
    res[0] = 0xb000 0xb007 0x40101
    res[1] = 0xb100 0xb103 0x40101
    res[2] = 0xb200 0xb207 0x40101
    res[3] = 0xb300 0xb303 0x40101
    res[4] = 0xb400 0xb40f 0x40101
    config[64]
  • controller (lspci):
    00:1f.2 IDE interface: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA IDE Controller (rev 02)
    03:00.0 SATA controller: JMicron Technology Corp. JMB362/JMB363 Serial ATA Controller (rev 02)
    03:00.1 IDE interface: JMicron Technology Corp. JMB362/JMB363 Serial ATA Controller (rev 02)
  • modules (lsmod|grep ata|sort):
    ata_generic 3995 0
    pata_jmicron 2907 0

Die Installation von openSuSE-11.4-x86_64 auf HWP2 verursachte Probleme.
Zwar wurde bei der Installation om Medium der Installcode von der DVD
geladen. Dann wurde aber um das Einlegen der “CD1” gebeten. Trotz Nach-
ladens diverser Treiber (Module) konnte die Installation nicht fortgesetzt
werden.
Eine FTP-Installation lief glatt. Aber nach dem Booten des neuen Systems
waren keine ATA-Geraete verfuegbar:

  • kein device node for ATA HDD:
    user@host # ls -Al /dev/sd{a,b}
    ls: Zugriff auf /dev/sdb nicht möglich: Datei oder Verzeichnis nicht gefunden
    brw-rw---- 1 root disk 8, 0 10. Aug 18:44 /dev/sda
  • keine device nodes for DVDRW:
    /dev/{sr0,cdrom,cdromrw,dvd,dvdrx}
  • yast2 zeigt bei Hardwareinfo unter IDE nur die S-ATAII Platte an
    o unter Blockgeraete beide Festplatten (/dev/sd{a,b}) und DVDRW (/dev/sdc)
    HDD S-ATA: driver : ata_piix
    pci path: pci-0000:00:1f.2-scsi-0:0:0:0
    HDD ATA : driver : pata_jmicron
    pci path: pci-0000:03:00.1-scsi-0:0:0:0
    DVDRW ATA: driver : pata_jmicron
    pci path: pci-0000:03:00.1-scsi-0:0:1:0
    o unter IDE nur die S-ATAII Festplatte (/dev/sda)
    o kein CD-ROM
  • hwinfo zeigt nur die S-ATAII Platte an:
    HDD S-ATA
    pci device: name = 0000:00:1f.5
    path = /devices/pci0000:00/0000:00:1f.5
    modalias = “pci:v00008086d00003B26sv00001849sd00003B26bc01sc01i85”
    class = 0x10185
    vendor = 0x8086
    device = 0x3b26
    subvendor = 0x1849
    subdevice = 0x3b26
    irq = 19
    res[0] = 0x8880 0x8887 0x40101
    res[1] = 0x8800 0x8803 0x40101
    res[2] = 0x8480 0x8487 0x40101
    res[3] = 0x8400 0x8403 0x40101
    res[4] = 0x8080 0x808f 0x40101
    res[5] = 0x8000 0x800f 0x40101
    config[64]
  • controller (lspci -t):
    -[0000:00]-±00.0 (Host Controller)

    ±1c.3-[04]–±00.0 Marvell Technology Group Ltd. Device 91a3 (S-ATA3)
    | -00.1 Marvell Technology Group Ltd. Device 91a4 (S-ATA3)

    ±1c.5-[05]----00.0 Marvell Technology Group Ltd. Device 91a0 (S-ATA3)

    ±1f.2 Intel Corporation 5 Series/3400 Series Chipset 4 port SATA IDE Controller

    -1f.5 Intel Corporation 5 Series/3400 Series Chipset 2 port SATA IDE Controller
    (also 3x S-ATA3 (Marvell), 6x S-ATAII (P55); 2x ATA nicht erkannt)
  • modules (lsmod|grep ata|sort):
    ata_generic 3995 0
    pata_jmicron 2907 0

Bemerkungen:

  • Die IDE-Geraete sind intakt: liefen auf HWP1
    => keine Geraetedefekte
  • das BIOS (ASRock P55 Extreme4) erkennt die IDE-Geraete korrekt
    o Menu Advanced/Storage configurator: korrekte Bezeichnungen, Daten
    => kein BIOS-Fehler (HWP2)
  • auf HWP1,HWP2 liefen derselbe Kernel mit denselben Modulen:
    o 2.6.37-1.2-default
    o ata_generic, pata_jmicron
  • ASRock P55 Extreme4:
    o Chipset: Intel P55
    o S-ATA3: Marvell 9128, Marvell 9123/9120
    o S-ATA, S-ATAII: Intel P55
    o Ultra ATA 133: Intel P55
    o AMI BIOS

Weiter Schritte:

  1. P55 Treiber
    Unter google, kernel.org gibt es Anhaltspunkte fuer einen Treiber, der
    die ATA/S-ATA controller des P55 ansteuert: module ata_piix
    Unter openSuSE-11.4 kernel 2.6.37.1-1.2-default konnte der Module nicht
    geladen werden:
    user@host # modprobe ata_piix
    FATAL: Module ata_piix not found.
    FATAL: Error running install command for ata_piix
    Ferner finden sich folgende Eintraege:
    user@host # grep -rn ata_piix /lib/modules/2.6.37.1-1.2-default/modules.builtin*
    /lib/modules/2.6.37.1-1.2-default/modules.builtin:30:kernel/drivers/ata/ata_piix.ko
    user@host # grep -rn CONFIG_ATA_PIIX /boot/config-2.6.37.1-1.2-default
    /boot/config-2.6.37.1-1.2-default:1731:CONFIG_ATA_PIIX=y
    D.h. ich gehe davon aus, dass ata_piix in den Kernel einkompiliert und
    damit verfuegbar ist.
  2. Andere Treiber
    Ich habe verschiedene verfuegbare ATA-/PATA-Treibermodule geladen (u.a.
    alle moeglichn IIX Varianten): dynamisch mit modprobe oder beim Booten
    ueber /etc/init.d/boot.loadmodules .
    Trotzdem wurden die ATA-Geraete nicht erkannt.
  3. Andere Distribution.
    Ich habe unter HWP2 eine openSuSE-11.3 installiert (Kernel mit Ausstattungsflavour
    default).
    Trotzdem wurden die ATA-Geraete nicht erkannt.
  4. Andere Kernel.
    Ich habe unter HWP2 andere Kernelmit diversen Treibern installiert:
    2.6.38.8, 2.6.34.7 .
    Trotzdem wurden die ATA-Geraete nicht erkannt.

Fragen:

  1. Warum werden auf HWP2 die 2 ATA-Geraete unter Linux nicht erkannt,
    sehr wohl aber im BIOS Setupmenu ?
  2. Das Problem scheint zu sein, dass die Geraete nicht am PCIe-Bus
    sichtbar sind (siehe lspci output von HWP2).
    Warum nicht ?
    a) Liegt es daran, dass das AMI-BIOS des Boards die Daten nicht korrekt
    weitergibt ?
    b) Liegt es daran, dass Linux die BIOS-Daten nicht korrekt ausliest ?
    c) Ist es ein Treiberproblem ?

MfG

  • a6fevmx7wqik,

BIOS Update?
Hast Du mehrere ATA-Ports auf dem Board? Falls ja, mal den anderen nehmen. IDE-Kabel tauschen, bzw. Verkabelung prüfen.

Mehr fällt mir auf Anhieb auch nicht ein.

Uwe