From: Sekhar Nori <nsek...@ti.com>

CONFIG_ENV_VARS_UBOOT_CONFIG, CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG and
CONFIG_BOARD_LATE_INIT is already set. Adding support to detect the
board. These variables are used by findfdt.

Signed-off-by: Sekhar Nori <nsek...@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvu...@ti.com>
---
Changes since V2:
-> No change.
 board/ti/am43xx/board.c |   16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
index 4fc1a40..723d0ca 100644
--- a/board/ti/am43xx/board.c
+++ b/board/ti/am43xx/board.c
@@ -98,6 +98,22 @@ int board_init(void)
 #ifdef CONFIG_BOARD_LATE_INIT
 int board_late_init(void)
 {
+#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
+       char safe_string[HDR_NAME_LEN + 1];
+       struct am43xx_board_id header;
+
+       if (read_eeprom(&header) < 0)
+               puts("Could not get board ID.\n");
+
+       /* Now set variables based on the header. */
+       strncpy(safe_string, (char *)header.name, sizeof(header.name));
+       safe_string[sizeof(header.name)] = 0;
+       setenv("board_name", safe_string);
+
+       strncpy(safe_string, (char *)header.version, sizeof(header.version));
+       safe_string[sizeof(header.version)] = 0;
+       setenv("board_rev", safe_string);
+#endif
        return 0;
 }
 #endif
-- 
1.7.9.5

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to