@@ -160,6 +160,33 @@ config BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG
endchoice
+#
+# Custom logo
+#
+
+config BR2_LINUX_KERNEL_CUSTOMLOGO
+ bool "Kernel custom logo"
+ select BR2_PACKAGE_CUSTOMLOGO
+ help
+ Change the linux boot logo with your own graphics.
+ It can be used as an early bootsplash.
+ The file should be in kernel ppm format if the
+ option BR2_LINUX_KERNEL_CUSTOMLOGO_CONVERT is not
+ selected.
+
+config BR2_LINUX_KERNEL_CUSTOMLOGO_PATH
+ string "Image file path"
+ depends on BR2_LINUX_KERNEL_CUSTOMLOGO
+ help
+ This image will be used as custom logo.
+
+config BR2_LINUX_KERNEL_CUSTOMLOGO_CONVERT
+ bool "Convert custom logo to kernel format"
+ depends on BR2_LINUX_KERNEL_CUSTOMLOGO
+ help
+ If checked, the convert command will be run on the source
+ image file to obtain a kernel compatible ppm image file.
+
config BR2_LINUX_KERNEL_DEFCONFIG
string "Defconfig name"
depends on BR2_LINUX_KERNEL_USE_DEFCONFIG
@@ -221,6 +221,21 @@ define LINUX_TRY_PATCH_TIMECONST
endef
LINUX_POST_PATCH_HOOKS += LINUX_TRY_PATCH_TIMECONST
+ifeq ($(BR2_LINUX_KERNEL_CUSTOMLOGO),y)
+ifeq ($(BR2_LINUX_KERNEL_CUSTOMLOGO_CONVERT),y)
+LINUX_DEPENDENCIES += host-imagemagick
+define LINUX_KERNEL_CUSTOMLOGO_PREPARE
+ $(HOST_DIR)/usr/bin/convert $(BR2_LINUX_KERNEL_CUSTOMLOGO_PATH) \
+ -dither None -colors 224 -compress none \
+ $(LINUX_DIR)/drivers/video/logo/logo_linux_clut224.ppm
+endef
+else
+define LINUX_KERNEL_CUSTOMLOGO_PREPARE
+ cp $(BR2_LINUX_KERNEL_CUSTOMLOGO_PATH) $(LINUX_DIR)/drivers/video/logo/logo_linux_clut224.ppm
+endef
+endif
+endif
+
ifeq ($(BR2_LINUX_KERNEL_USE_DEFCONFIG),y)
LINUX_KCONFIG_DEFCONFIG = $(call qstrip,$(BR2_LINUX_KERNEL_DEFCONFIG))_defconfig
else ifeq ($(BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG),y)
@@ -304,6 +319,9 @@ define LINUX_KCONFIG_FIXUP_CMDS
$(call KCONFIG_ENABLE_OPT,CONFIG_ARM_APPENDED_DTB,$(@D)/.config))
$(if $(BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV),
$(call KCONFIG_DISABLE_OPT,CONFIG_MXC_GPU_VIV,$(@D)/.config))
+ $(if $(BR2_LINUX_KERNEL_CUSTOMLOGO),
+ $(call KCONFIG_ENABLE_OPT,CONFIG_LOGO,$(@D)/.config)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_LOGO_LINUX_CLUT224,$(@D)/.config))
endef
ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT),y)
@@ -356,6 +374,7 @@ endif
# Compilation. We make sure the kernel gets rebuilt when the
# configuration has changed.
define LINUX_BUILD_CMDS
+ $(LINUX_KERNEL_CUSTOMLOGO_PREPARE)
$(if $(BR2_LINUX_KERNEL_USE_CUSTOM_DTS),
cp -f $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)) $(KERNEL_ARCH_PATH)/boot/dts/)
$(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_TARGET_NAME)
This patch adds a simple way to change the linux bootup logo. The patch was kept purposely simple to support only the use cause where a user needs a colour linux boot up logo. Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> --- linux/Config.in | 27 +++++++++++++++++++++++++++ linux/linux.mk | 19 +++++++++++++++++++ 2 files changed, 46 insertions(+)