stm32mp1: spl: add spl_display_print
authorPatrick Delaunay <patrick.delaunay@st.com>
Wed, 27 Feb 2019 16:01:14 +0000 (17:01 +0100)
committerPatrick Delaunay <patrick.delaunay@st.com>
Fri, 12 Apr 2019 14:09:13 +0000 (16:09 +0200)
SPL displays the board model from device tree.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
arch/arm/mach-stm32mp/Kconfig
arch/arm/mach-stm32mp/spl.c

index 3101d80..d70658a 100644 (file)
@@ -18,6 +18,7 @@ config SPL
        select SPL_SERIAL_SUPPORT
        select SPL_SYSCON
        select SPL_DRIVERS_MISC_SUPPORT
+       imply SPL_DISPLAY_PRINT
        imply SPL_LIBDISK_SUPPORT
 
 config SYS_SOC
index c6ae73d..501e077 100644 (file)
@@ -7,6 +7,8 @@
 #include <dm.h>
 #include <spl.h>
 #include <asm/io.h>
+#include <asm/arch/sys_proto.h>
+#include <linux/libfdt.h>
 
 u32 spl_boot_device(void)
 {
@@ -58,6 +60,21 @@ int spl_boot_partition(const u32 boot_device)
        }
 }
 
+#ifdef CONFIG_SPL_DISPLAY_PRINT
+void spl_display_print(void)
+{
+       DECLARE_GLOBAL_DATA_PTR;
+       const char *model;
+
+       /* same code than show_board_info() but not compiled for SPL
+        * see CONFIG_DISPLAY_BOARDINFO & common/board_info.c
+        */
+       model = fdt_getprop(gd->fdt_blob, 0, "model", NULL);
+       if (model)
+               printf("Model: %s\n", model);
+}
+#endif
+
 void board_init_f(ulong dummy)
 {
        struct udevice *dev;