I have made some adjustments to the kernel source so that I can use a custom logo on the kernel splash screen. In particular, the changes I have made allow the custom logo to be chosen as a kernel configuration option when I run the following bitbake command:
bitbake -c menuconfig virtual/kernel
and then navigate to the Device Drivers > Graphics support -> Bootup logo. I set the Bootup logo to the custom logo, save my changes & exit menuconfig. At this point, the generated .config file is at tmp/work/imx6ul_var_dart-fslc-linux-gnueabi/linux-variscite/4.9.88-r0/build/.config and I confirm that my logo has been configured as the boot logo in the following line from the .config file:
CONFIG_LOGO_CUSTOM_CLUT224=y
All is good up to this point. Now, I want to save the .config file in a defconfig format so that I can overwrite the default configuration in the source tree and replace it with the generated defconfig file. To do this I run the following command:
bitbake -c savedefconfig virtual/kernel
At this point, the generated defconfig file is at tmp/work/imx6ul_var_dart-fslc-linux-gnueabi/linux-variscite/4.9.88-r0/build/defconfig. But, when I search the generated defconfig file...I do not find the following line:
CONFIG_LOGO_CUSTOM_CLUT224=y
Why am I not seeing this configuration option in the defconfig file even though it was set in the .config file it is being generated from?
Edit (adding extra info):
I will describe the precise changes made to the kernel source. Firstly, I added the logo (logo_custom_clut224.ppm) to drivers/video/logo. I then modified drivers/video/logo/Kconfig to include the following entry inside if LOGO
and the corresponding endif
:
config LOGO_CUSTOM_CLUT224
bool "224-color Custom logo"
default y
I then added the following logic to drivers/video/logo/logo.c inside the if (depth >= 8)
block:
#ifdef CONFIG_LOGO_CUSTOM_CLUT224
logo = &logo_custom_clut224;
#endif
I then added the following statement to include/linux/linux_logo.h:
extern const struct linux_logo logo_custom_clut224;
Lastly, I modified the drivers/video/logo/Makefile to include an entry for the custom logo:
obj-$(CONFIG_LOGO_CUSTOM_CLUT224 += logo_custom_clut224.o
I would also like to note that the logo I am trying to use is 800x480.