Der Linux-Kernel make überschreibt immer meine .config / drop-Änderungen
Dies bedeutet, dass Sie wahrscheinlich keine gültige .config- Datei zum Erstellen eines Kernels haben.
Anscheinend haben Sie die von Ihnen erwähnte Anleitung nicht befolgt:
It is often easiest to start with a base default configuration and then customize it for you use case if needed.
Wenn Sie tatsächlich eine " Basis-Standardkonfiguration " (z. B. den letzten Teil dieser Antwort) anstelle einer geheimen " aktuellen .config- Datei " verwendet hätten, wären Sie wahrscheinlich nicht auf solche Probleme gestoßen .
Ich habe die aktuelle .config-Datei (make localmodconfig) kopiert und manuell bearbeitet, um Unterstützung für das integrierte Wlan-Modul hinzuzufügen
Nein, das ist nicht die richtige Art, einen Linux-Kernel zu konfigurieren.
Die Verwendung einer .config- Datei aus einer älteren Kernel-Version hat wahrscheinlich veraltete Konfigurationsnamen und sollte einfach vermieden werden, wenn Sie sich nicht sicher sind, was Sie tun.
Andernfalls "verwenden Sie" make oldconfig ", wenn Sie Ihre vorhandene Konfiguration ohne großen Aufwand auf eine neue Version übertragen möchten. Sie werden nur nach Antworten auf neue Fragen gefragt " (Zitat aus der README-Datei des Linux-Kernels).
Wenn Sie nicht wirklich wissen, was Sie tun, führt das direkte Bearbeiten der .config- Datei möglicherweise dazu, dass abhängige und erforderliche Konfigurationsoptionen fehlen.
Benötige ich einen anderen Kernel? Oder noch etwas tun?
Sie haben sich für den Mainline-Kernel entschieden, der keine Defconfig-Datei speziell für den Beaglebone Black-SBC enthält.
Sie könnten mit einem generischen Build für ein TI AM335x-Board beginnen und dann mit der am335x-boneblack.dtb- Device-Tree-Datei booten
Beginnen Sie noch einmal mit dem Shell-Befehl
make mrproper
oder
make distclean
Stellen Sie sicher, dass sich Ihre Toolchain (Cross-Compiler usw.) in Ihrem PATH befindet, z
echo $PATH
Legen Sie die Umgebungsvariable für die Architektur fest:
export ARCH=arm
Legen Sie die Umgebungsvariable für das Toolchain-Präfix entsprechend der Installation fest, z
export CROSS_COMPILE=arm-linux-gnueabihf-
Beachten Sie den nachfolgenden Bindestrich.
Installieren Sie eine generische Kernelkonfiguration für die TI Sitara-Produktlinie (anstelle einer bestimmten Beaglebone Black-Defconfig).
make omap2plus_defconfig
Passen Sie den Kernel-Build mit einem geeigneten Konfigurationstool an:
make menuconfig
Erstellen Sie dann das Kernel-Image, ladbare Module und Device Tree-Blob:
make uImage make modules make am335x-boneblack.dtb
Weitere Informationen finden Sie in der README-Datei in der Linux-Kernel-Quelle.