Почему моя опция конфигурации ядра не установлена ​​в результате defconfig после запуска bitbake -c savedefconfig virtual / kernel? - PullRequest
1 голос
/ 09 апреля 2019

Я внёс некоторые изменения в исходный код ядра, чтобы я мог использовать собственный логотип на заставке ядра. В частности, внесенные мной изменения позволяют выбрать собственный логотип в качестве параметра конфигурации ядра, когда я запускаю следующую команду bitbake:

bitbake -c menuconfig virtual/kernel

, а затем перейдите к Драйверы устройств> Поддержка графики -> Логотип загрузки. Я установил логотип Bootup на собственный логотип, сохранил свои изменения и завершил настройку меню. На данный момент сгенерированный файл .config находится по адресу tmp / work / imx6ul_var_dart-fslc-linux-gnueabi / linux-variscite / 4.9.88-r0 / build / .config, и я подтверждаю, что мой логотип был настроен в качестве логотипа загрузки в следующей строке из файла .config:

CONFIG_LOGO_CUSTOM_CLUT224=y

Все хорошо до этого момента. Теперь я хочу сохранить файл .config в формате defconfig, чтобы я мог перезаписать конфигурацию по умолчанию в исходном дереве и заменить ее созданным файлом defconfig. Для этого я запускаю следующую команду:

bitbake -c savedefconfig virtual/kernel

На данный момент сгенерированный файл defconfig находится по адресу tmp / work / imx6ul_var_dart-fslc-linux-gnueabi / linux-variscite / 4.9.88-r0 / build / defconfig. Но при поиске в сгенерированном файле defconfig ... я не нахожу следующую строку:

CONFIG_LOGO_CUSTOM_CLUT224=y

Почему я не вижу этот параметр конфигурации в файле defconfig, хотя он был задан в файле .config, из которого он генерируется?

Редактировать (добавить дополнительную информацию):

Я опишу точные изменения, внесенные в исходный код ядра. Во-первых, я добавил логотип (logo_custom_clut224.ppm) в драйверы / видео / логотип. Затем я изменил драйверы / видео / логотип / Kconfig, добавив следующую запись в if LOGO и соответствующую endif:

config LOGO_CUSTOM_CLUT224
    bool "224-color Custom logo"
    default y

Затем я добавил следующую логику в drivers / video / logo / logo.c внутри блока if (depth >= 8):

#ifdef CONFIG_LOGO_CUSTOM_CLUT224
    logo = &logo_custom_clut224;
#endif

Затем я добавил следующее выражение для включения / linux / linux_logo.h:

extern const struct linux_logo logo_custom_clut224;

Наконец, я изменил драйверы / видео / логотип / Makefile, добавив запись для собственного логотипа:

obj-$(CONFIG_LOGO_CUSTOM_CLUT224 += logo_custom_clut224.o

Я также хотел бы отметить, что я пытаюсь использовать логотип 800x480.

...