Linux kernel make keeps overwriting my .config /dropping changes
Isso indica que você provavelmente não possui um arquivo .config válido para construir um kernel.
Parece que você não seguiu o guia que você mencionou:
It is often easiest to start with a base default configuration and then customize it for you use case if needed.
Se você realmente usou uma " configuração padrão base " (por exemplo, consulte a última parte desta resposta) em vez de um mistério " atual .config arquivo ", então você provavelmente não teria encontrado tais problemas.
I copied the current .config file (make localmodconfig) and edited it manually to add support for the built in Wlan module
Não, essa não é a maneira correta de configurar um kernel Linux.
Usar um arquivo .config de uma versão antiga do kernel provavelmente terá nomes de configuração obsoletos, e isso deve ser evitado se você não tiver certeza do que está fazendo.
Caso contrário, " se você quiser carregar sua configuração existente para um
nova versão com o mínimo de trabalho, use "make oldconfig", que será
só peço as respostas para novas perguntas "(citação do arquivo README do kernel Linux).
A menos que você realmente saiba o que está fazendo, a edição direta do arquivo .config provavelmente resultará na falta de opções de configuração dependentes e necessárias.
Do I need a different kernel? Or do something else?
Você optou por usar o kernel principal, que não possui um arquivo defconfig especificamente para o Beaglebone Black SBC.
Você poderia começar com uma compilação genérica para uma placa TI AM335x e, em seguida, inicializar com o arquivo de árvore de dispositivos am335x-boneblack.dtb
Recomeçar com o comando shell
make mrproper
ou
make distclean
Verifique se o seu conjunto de ferramentas (compilador cruzado, etc.) está em seu PATH, por exemplo,
echo $PATH
Defina a variável de ambiente para a arquitetura:
export ARCH=arm
Defina a variável de ambiente para o prefixo da cadeia de ferramentas de acordo com o que você instalou, por exemplo,
export CROSS_COMPILE=arm-linux-gnueabihf-
Observe o hífen final.
Instale uma configuração genérica do kernel para a linha de produtos TI Sitara (no lugar de um defconfig Beaglebone Black específico).
make omap2plus_defconfig
Personalize a compilação do kernel usando uma ferramenta de configuração adequada :
make menuconfig
Em seguida, crie a imagem do kernel, os módulos carregáveis e o blob da Árvore de dispositivos:
make uImage
make modules
make am335x-boneblack.dtb
Mais detalhes podem ser encontrados no arquivo README na fonte do kernel do Linux.