Ich versuche gerade einen Kernel (2.6.18.1) zu kompilieren. Das Kompilieren selbst funktioniert ohne Probleme. Nur leider bootet der neue Kernel nicht. Das Problem ist der JMicron Controller (JMB363). Ich habe die config aus dem laufenden Kernel (2.6.17-10 Ubuntu) kopiert. Die def für den Controller ist in der Header-Datei pci_ids.h. Die def ist sowohl im laufenden als auch im neuen Kernel enthalten. Beim Boot des laufenden Kernels wird als erstes der JMicron Controller auf enable gesetzt. beim neuen nicht und deshalb wird keine Festplatte gefunden. D. h. Root kann nicht eingebunden werden. Wie erreiche ich, dass im neuen der Controller ebenfalls als erstes geladen wird?
Ich habe folgenden Eintrag in der drivers/ide/pci/generic.c gefunden.
Code: Alles auswählen
},{ /* 16 */
.name = "JMB363",
.init_hwif = init_hwif_generic,
.channels = 2,
.autodma = AUTODMA,
.bootable =OFF_BOARD,
},{ /* 17 */
Kann es sein, dass der Eintrag
bootable auf
ON_BOARD gesetzt werden muss? Gibt es dafür in der config/menuconfig einen Eintrag? Wenn ja dann wo? Ich habe keinen gefunden. Oder muss ich den Eintrag in der Datei direkt ändern?
Noch eine kleine Zusatzfrage. Was muss ich tun, um den Onboard-Lan von Realtec (RTL8111/8168) schon beim Kernelbau mit zu integrieren? Kann ich die Sourcen von Realtek (r1000) da mit reinpopeln und wenn ja dann wie und wo?
Ich muss dazu sagen, dass ich bisher noch keinen eigenen Kernel gebaut habe, weil ich es bisher nie musste. Aber im Augenblick scheint mir nichts anderes übrig zu bleiben, wenn ich nicht bei Ubuntu bleiben will.
Vielen Dank im Voraus