在运行bitbake -c savedefconfig虚拟/内核后,为什么在生成的defconfig中未设置我的内核配置选项?

时间:2019-04-08 23:00:31

标签: embedded-linux splash-screen yocto bitbake

我对内核源代码进行了一些调整,以便可以在内核启动屏幕上使用自定义徽标。特别是,当我运行以下bitbake命令时,所做的更改允许选择将自定义徽标作为内核配置选项:

bitbake -c menuconfig virtual/kernel

,然后导航到“设备驱动程序”>“图形支持”->“启动”徽标。我将Bootup徽标设置为自定义徽标,保存更改并退出menuconfig。此时,生成的.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

为什么即使在config.config文件中设置了defconfig文件,但在configconfig文件中却看不到该配置选项,所以为什么?

编辑(添加更多信息):

我将描述对内核源代码所做的精确更改。首先,我在驱动程序/视频/徽标中添加了徽标(logo_custom_clut224.ppm)。然后,我修改了driver / video / logo / Kconfig,在if LOGO和相应的endif中包括以下条目:

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

然后,我在if (depth >= 8)块中的driver / video / logo / logo.c中添加了以下逻辑:

#ifdef CONFIG_LOGO_CUSTOM_CLUT224
    logo = &logo_custom_clut224;
#endif

然后我将以下语句添加到include / linux / linux_logo.h:

extern const struct linux_logo logo_custom_clut224;

最后,我修改了drivers / video / logo / Makefile,以包含自定义徽标的条目:

obj-$(CONFIG_LOGO_CUSTOM_CLUT224 += logo_custom_clut224.o

我还要指出,我要使用的徽标是800x480。

0 个答案:

没有答案