armbian_build/patch/u-boot/u-boot-sunxi/allwinner-boot-splash.patch
Markus Hoffrogge 4271d7a17f Fix sunxi uboot redefined warnings on "CONFIG_VIDEO_*"
- wrap CONFIG_VIDEO definitions with if !defined pattern
2023-03-22 07:46:37 +01:00

98 lines
2.7 KiB
Diff

From 5ac0039607be388a35df2dd4729fcc9d03b84b21 Mon Sep 17 00:00:00 2001
From: The Going <48602507+The-going@users.noreply.github.com>
Date: Fri, 1 Apr 2022 22:57:09 +0300
Subject: [PATCH] sunxi boot splash
---
cmd/Kconfig | 1 +
include/config_distro_bootcmd.h | 9 +++++++++
include/configs/sunxi-common.h | 16 ++++++++++++++++
3 files changed, 26 insertions(+)
diff --git a/cmd/Kconfig b/cmd/Kconfig
index 3a857b3f..492476e5 100644
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
@@ -1662,6 +1662,7 @@ menu "Misc commands"
config CMD_BMP
bool "Enable 'bmp' command"
depends on LCD || DM_VIDEO || VIDEO
+ default y
help
This provides a way to obtain information about a BMP-format image
and to display it. BMP (which presumably stands for BitMaP) is a
diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h
index 750e9e04..9e70ddb3 100644
--- a/include/config_distro_bootcmd.h
+++ b/include/config_distro_bootcmd.h
@@ -430,6 +430,15 @@
BOOTENV_SHARED_EFI \
BOOTENV_SHARED_VIRTIO \
"boot_prefixes=/ /boot/\0" \
+ "splashpos=m,m\0" \
+ "splashimage=66000000\0" \
+ "loadsplash= " \
+ "for prefix in ${boot_prefixes}; do " \
+ "if test -e mmc 0 ${prefix}boot.bmp; then " \
+ "load mmc 0 ${splashimage} ${prefix}boot.bmp; " \
+ "bmp d ${splashimage}; " \
+ "fi; " \
+ "done\0" \
"boot_scripts=boot.scr.uimg boot.scr\0" \
"boot_script_dhcp=boot.scr.uimg\0" \
BOOTENV_BOOT_TARGETS \
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 958b850d..c4f34dbf 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -223,6 +223,30 @@ extern int soft_i2c_gpio_scl;
#define CONFIG_VIDEO_LCD_I2C_BUS -1 /* NA, but necessary to compile */
#endif
+#if defined CONFIG_VIDEO || defined CONFIG_DM_VIDEO
+#if !defined CONFIG_VIDEO_LOGO
+#define CONFIG_VIDEO_LOGO
+#endif
+#if !defined CONFIG_SPLASH_SCREEN
+#define CONFIG_SPLASH_SCREEN
+#endif
+#if !defined CONFIG_SPLASH_SCREEN_ALIGN
+#define CONFIG_SPLASH_SCREEN_ALIGN
+#endif
+#if !defined CONFIG_BMP_16BPP
+#define CONFIG_BMP_16BPP
+#endif
+#if !defined CONFIG_BMP_24BPP
+#define CONFIG_BMP_24BPP
+#endif
+#if !defined CONFIG_BMP_32BPP
+#define CONFIG_BMP_32BPP
+#endif
+#if !defined CONFIG_VIDEO_BMP_RLE8
+#define CONFIG_VIDEO_BMP_RLE8
+#endif
+#endif
+
/* Ethernet support */
#ifdef CONFIG_USB_EHCI_HCD
@@ -394,8 +404,14 @@ extern int soft_i2c_gpio_scl;
#include <config_distro_bootcmd.h>
#ifdef CONFIG_USB_KEYBOARD
+#if defined CONFIG_VIDEO || defined CONFIG_DM_VIDEO
+#define CONSOLE_STDIN_SETTINGS \
+ "preboot=run loadsplash; usb start\0" \
+ "stdin=serial,usbkbd\0"
+#else
#define CONSOLE_STDIN_SETTINGS \
"stdin=serial,usbkbd\0"
+#endif
#else
#define CONSOLE_STDIN_SETTINGS \
"stdin=serial\0"
--
2.34.1