Ядро Linux продолжает переписывать мои .config / сбрасывающие изменения
Это означает, что у вас, вероятно, нет действительного файла .config для сборки ядра.
Похоже, вы не следовали упомянутому вами руководству:
It is often easiest to start with a base default configuration and then customize it for you use case if needed.
Если бы вы на самом деле использовали « базовую конфигурацию по умолчанию » (например, обратитесь к последней части этого ответа) вместо загадочного « текущего файла .config », то вы, вероятно, не столкнулись бы с такими проблемами.
Я скопировал текущий файл .config (make localmodconfig) и отредактировал его вручную, чтобы добавить поддержку встроенного модуля Wlan
Нет, это неправильный способ настройки ядра Linux.
Использование файла .config из более старой версии ядра, вероятно, будет содержать устаревшие имена конфигураций, и его просто следует избегать, если вы не уверены в том, что делаете.
В противном случае, « если вы хотите перенести существующую конфигурацию в новую версию с минимальными затратами труда, используйте« make oldconfig », которая будет запрашивать только ответы на новые вопросы » (цитата из файла README ядра Linux).
Если вы действительно не знаете, что делаете, прямое редактирование файла .config, вероятно, приведет к отсутствию зависимых и необходимых параметров конфигурации.
Нужно ли другое ядро? Или сделать что-то еще?
Вы решили использовать основное ядро, у которого нет файла defconfig специально для Beaglebone Black SBC.
Вы можете начать с общей сборки для платы TI AM335x, а затем загрузиться с файлом дерева устройств am335x-boneblack.dtb
Начать заново с командой оболочки
make mrproper
или же
make distclean
Убедитесь, что ваша цепочка инструментов (кросс-компилятор и т. Д.) Находится в вашей переменной PATH, например
echo $PATH
Установите переменную среды для архитектуры:
export ARCH=arm
Установите переменную окружения для префикса набора инструментов в соответствии с тем, что вы установили, например
export CROSS_COMPILE=arm-linux-gnueabihf-
Обратите внимание на конечный дефис.
Установите стандартную конфигурацию ядра для линейки продуктов TI Sitara (вместо определенной дефконфигурации Beaglebone Black).
make omap2plus_defconfig
Настройте сборку ядра, используя подходящий инструмент конфигурации:
make menuconfig
Затем создайте образ ядра, загружаемые модули и блоб Device Tree:
make uImage make modules make am335x-boneblack.dtb
Более подробную информацию можно найти в файле README в исходном коде ядра Linux.