Ich möchte alle meine Module eingebaut haben, aber dies schlägt fehl mit iwlagn
:
iwlagn 0000:03:00.0: request for firmware file 'iwlwifi-6000-4.ucode' failed.
iwlagn 0000:03:00.0: no suitable firmware found!
Die Mikrocode-Datei existiert in /lib/firmware
und das Ganze funktioniert einwandfrei, wenn ich iwlagn
als Modul kompiliere . Ich habe keine Ahnung, wo nach der Datei gesucht wird oder was falsch ist - irgendwelche Ideen?
linux
kernel
kernel-modules
einfach nicht tun
quelle
quelle
Antworten:
Werfen Sie einen Blick auf die
CONFIG_FIRMWARE_IN_KERNEL
,CONFIG_EXTRA_FIRMWARE
undCONFIG_EXTRA_FIRMWARE_DIR
Konfigurationsoptionen (bei gefunden Device Drivers -> Generic Driver Optionen ).Die erste Option ermöglicht die Integration der Firmware in den Kernel, die zweite sollte den Firmware-Dateinamen (oder eine durch Leerzeichen getrennte Liste von Namen) enthalten und die dritte, wo nach der Firmware gesucht werden soll.
In Ihrem Beispiel würden Sie diese Optionen auf Folgendes setzen:
Ein Tipp: Das Kompilieren aller Module in den Kernel ist keine gute Idee . Ich glaube, ich verstehe Ihren Ehrgeiz, weil ich es irgendwann auch unbedingt tun wollte. Das Problem bei einem solchen Ansatz ist, dass Sie das Modul nicht mehr entladen können, sobald es eingebaut ist - und leider neigen insbesondere die drahtlosen Treiber dazu, fehlerhaft zu sein, was dazu führt, dass ihre Module neu geladen werden müssen. In einigen Fällen funktioniert eine Modulversion eines aktuellen Treibers einfach nicht.
quelle