From 02a3a4e50f388cdce84d4b9f0e9c600464dc28f9 Mon Sep 17 00:00:00 2001 From: "keith.zhao" Date: Wed, 15 Mar 2023 02:10:22 -0700 Subject: [PATCH] board:riscv:jh7110: modify config for starfive JH7110 board add board_late_init to init display memory config the bitmap picture Signed-off-by: keith.zhao --- board/starfive/evb/starfive_evb.c | 20 +++++++++++++++++++ .../visionfive2/starfive_visionfive2.c | 15 +++++++++++++- include/configs/starfive-evb.h | 2 ++ include/configs/starfive-visionfive2.h | 4 +++- 4 files changed, 39 insertions(+), 2 deletions(-) diff --git a/board/starfive/evb/starfive_evb.c b/board/starfive/evb/starfive_evb.c index 61ff83d02e..e1e3f2dbc4 100644 --- a/board/starfive/evb/starfive_evb.c +++ b/board/starfive/evb/starfive_evb.c @@ -16,6 +16,8 @@ #include #include #include +#include +#include enum chip_type_t { CHIP_A = 0, @@ -299,3 +301,21 @@ err: } #endif +int board_late_init(void) +{ + struct udevice *dev; + int ret; + + ret = uclass_get_device(UCLASS_VIDEO, 0, &dev); + if (ret) + return ret; + + ret = video_bmp_display(dev, (ulong)&bmp_logo_bitmap[0], 0, 0, false); + if (ret) + goto err; + +err: + return 0; + +} + diff --git a/board/starfive/visionfive2/starfive_visionfive2.c b/board/starfive/visionfive2/starfive_visionfive2.c index a2e6e5ec3e..e0203f637f 100644 --- a/board/starfive/visionfive2/starfive_visionfive2.c +++ b/board/starfive/visionfive2/starfive_visionfive2.c @@ -17,6 +17,8 @@ #include #include #include +#include +#include #define SYS_CLOCK_ENABLE(clk) \ setbits_le32(SYS_CRG_BASE + clk, CLK_ENABLE_MASK) @@ -437,6 +439,9 @@ int board_init(void) #ifdef CONFIG_BOARD_LATE_INIT int board_late_init(void) { + struct udevice *dev; + int ret; + get_boot_mode(); jh7110_gmac_init(get_chip_type(), get_board_type()); @@ -448,6 +453,15 @@ int board_late_init(void) env_set_hex("memory_addr", gd->ram_base); env_set_hex("memory_size", gd->ram_size); + ret = uclass_get_device(UCLASS_VIDEO, 0, &dev); + if (ret) + return ret; + + ret = video_bmp_display(dev, (ulong)&bmp_logo_bitmap[0], 0, 0, false); + if (ret) + goto err; + +err: return 0; } #endif @@ -493,4 +507,3 @@ err: return 0; } #endif - diff --git a/include/configs/starfive-evb.h b/include/configs/starfive-evb.h index f9ee1f5190..b9587ff043 100644 --- a/include/configs/starfive-evb.h +++ b/include/configs/starfive-evb.h @@ -186,5 +186,7 @@ #define memcpy_fromio(a, c, l) memcpy((a), (c), (l)) #define memcpy_toio(c, a, l) memcpy((c), (a), (l)) +#define CONFIG_VIDEO_BMP_LOGO +#define CONFIG_VIDEO_LOGO #endif /* _STARFIVE_EVB_H */ diff --git a/include/configs/starfive-visionfive2.h b/include/configs/starfive-visionfive2.h index 7d41c4a43f..cddba5d595 100644 --- a/include/configs/starfive-visionfive2.h +++ b/include/configs/starfive-visionfive2.h @@ -271,5 +271,7 @@ #define memcpy_fromio(a, c, l) memcpy((a), (c), (l)) #define memcpy_toio(c, a, l) memcpy((c), (a), (l)) -#endif /* _STARFIVE_VISIONFIVE2_H */ +#define CONFIG_VIDEO_BMP_LOGO +#define CONFIG_VIDEO_LOGO +#endif /* _STARFIVE_EVB_H */