Yocto: переопределение конфигурации ядра - PullRequest
0 голосов
/ 16 февраля 2020

Относится к этому вопросу. Для того, чтобы настроить конфигурацию ядра, я создал на своем пользовательском слое следующую структуру:

$ tree recipes-kernel/
recipes-kernel/
└── linux
    ├── files
    │   └── <image>-defconfig
    └── linux-stm32mp_4.19.bbappend

Где файл defconfig на самом деле .config, используемый для компиляции ядра вручную (см. Другой вопрос). Файл bbappend содержит следующий код:

SRC_URI += "file://<full-path>/meta-custom-layer/recipes-kernel/linux/files/<image>-defconfig"
KERNEL_DEFCONFIG_stm32mp1_<variant> = "{WORKDIR}/<image>-defconfig"

Я уверен, что файл обрабатывается, потому что, если я изменяю имя defconfig bitbake, возникает ошибка файла не найдена.

Проблема в том, что скомпилированное ядро ​​ не имеет моей настройки. Но если я скопирую свой defconfig в каталог сборки (т. Е. tmp/work/stm32mp1_<variant>-openstlinux_eglfs-linux-gnueabi/linux-stm32mp/4.19-r0/linux-stm32mp1-<variant>-standard-build/.config) и вручную bitbake virtual/kernel), это произойдет.

Так что, похоже, он ищет и находит мой defconfig, но затем игнорирует его. Где моя ошибка?

1 Ответ

2 голосов
/ 16 февраля 2020

Я не знаю, в чем твоя ошибка. Но я знаю, что я делаю.

Вместо того, чтобы пытаться перегрузить defconfig, я позволил bitbake генерировать фрагменты ядра (отличия от поставляемого ядром defconfig): https://edison-fw.github.io/meta-intel-edison/5.1-Bitbake-tricks#configuring -the-kernel-and-grab-the-kernel-фрагмента

Затем я добавляю фрагменты в свой рецепт: https://github.com/edison-fw/meta-intel-edison/blob/warrior/meta-intel-edison-bsp/recipes-kernel/linux/linux-yocto_5.4.0.bb

...