[PATCH v2] board: stm32mp1: add splash screen on dk2

Patrick DELAUNAY patrick.delaunay at foss.st.com
Wed Jul 5 14:09:15 CEST 2023


Hi Dario,

On 7/4/23 19:31, Dario Binacchi wrote:
> Display the STMicroelectronics logo.
>
> Signed-off-by: Dario Binacchi <dario.binacchi at amarulasolutions.com>
>
>
> ---
>
> Changes in v2:
> - move "splash.h" and "st_logo_data.h" headers before "syscon.h" in order
>    to keep includes sorted alphabetically.
> - remove "logo" variable and pass "(ulong)stmicroelectronics_uboot_logo_8bit_rle"
>    directly to the bmp_display() function.
>
>   board/st/stm32mp1/stm32mp1.c | 11 +++++++++++
>   1 file changed, 11 insertions(+)
>
> diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
> index 1a1b1844c8c0..ebd3948d519c 100644
> --- a/board/st/stm32mp1/stm32mp1.c
> +++ b/board/st/stm32mp1/stm32mp1.c
> @@ -31,8 +31,11 @@
>   #include <phy.h>
>   #include <remoteproc.h>
>   #include <reset.h>
> +#include <splash.h>
> +#include <st_logo_data.h>
>   #include <syscon.h>
>   #include <usb.h>
> +#include <video.h>
>   #include <watchdog.h>
>   #include <asm/global_data.h>
>   #include <asm/io.h>
> @@ -684,6 +687,14 @@ int board_init(void)
>   	fw_images[0].fw_name = u"STM32MP-FIP";
>   	fw_images[0].image_index = 1;
>   #endif
> +
> +	if (IS_ENABLED(CONFIG_CMD_BMP)) {
> +		if (board_is_stm32mp15x_dk2()) {
> +			bmp_display((ulong)stmicroelectronics_uboot_logo_8bit_rle,
> +				    BMP_ALIGN_CENTER, BMP_ALIGN_CENTER);
> +		}
> +	}
> +
>   	return 0;
>   }
>   


I think "include/st_logo_data.h" should be not directly used for STM32 MPU

it is a obsolete way to have splash screen, used by STM32 MCU as STM32F7.


And direct management for splash it is not really needed in board code,

as it is already managed in VIDEO framework with CONFIG_VIDEO_LOGO

enabled by default since commit 845d71ce999936ab5ae2cef4542b221851cde199 
("video: Show the U-Boot logo by default")

and with CONFIG_SPLASH_SCREEN


see stdio_init_tables()

   => splash_display();


position is managed with:

- CONFIG_SPLASH_SCREEN_ALIGN

- variable: "splashpos=m,m"


But by default the U-Boot logo (yellow submarine) is used for VIDEO LOGO 
(SPLASH_DECL(u_boot_logo) in video uclass

or denx for SPLASH is used in tools/Makefile


# Generic logo
ifeq ($(LOGO_BMP),)
LOGO_BMP= $(srctree)/$(src)/logos/denx.bmp

# Use board logo and fallback to vendor
ifneq ($(wildcard $(srctree)/$(src)/logos/$(BOARD).bmp),)
LOGO_BMP= $(srctree)/$(src)/logos/$(BOARD).bmp
else
ifneq ($(wildcard $(srctree)/$(src)/logos/$(VENDOR).bmp),)
LOGO_BMP= $(srctree)/$(src)/logos/$(VENDOR).bmp
endif
endif


The STMicroelectronics logo image can be integrated in this directory with

          VENDOR="st"

          BOARD="stm32mp1"


We need to add it ./tools/logos/st.bmp


I can propose something, for all ST board STM32MP1x, not only DK2


Patrick



More information about the U-Boot mailing list