arm: socfpga: Export board ID as U-Boot environment
authorAlif Zakuan Yuslaimi <alif.zakuan.yuslaimi@intel.com>
Tue, 18 Feb 2025 08:35:01 +0000 (16:35 +0800)
committerTom Rini <trini@konsulko.com>
Tue, 25 Feb 2025 16:53:59 +0000 (10:53 -0600)
Board ID is exported as environment variable for use to boot Linux with FIT
configuration.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Signed-off-by: Tien Fong Chee <tien.fong.chee@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
arch/arm/mach-socfpga/board.c
arch/arm/mach-socfpga/include/mach/board.h [new file with mode: 0644]
arch/arm/mach-socfpga/misc_soc64.c

index 24a15f7..d07b3fc 100644 (file)
@@ -6,6 +6,7 @@
  */
 
 #include <config.h>
+#include <asm/arch/board.h>
 #include <asm/arch/clock_manager.h>
 #include <asm/arch/mailbox_s10.h>
 #include <asm/arch/misc.h>
diff --git a/arch/arm/mach-socfpga/include/mach/board.h b/arch/arm/mach-socfpga/include/mach/board.h
new file mode 100644 (file)
index 0000000..2c3127e
--- /dev/null
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Copyright (C) 2025 Altera Corporation <www.altera.com>
+ */
+
+#ifndef BOARD_H_
+#define BOARD_H_
+
+u8 socfpga_get_board_id(void);
+
+#endif /* _BOARD_H_ */
index 573a8f7..793b8b8 100644 (file)
@@ -6,6 +6,7 @@
  */
 
 #include <altera.h>
+#include <asm/arch/board.h>
 #include <asm/arch/mailbox_s10.h>
 #include <asm/arch/misc.h>
 #include <asm/arch/reset_manager.h>
@@ -57,10 +58,15 @@ int print_cpuinfo(void)
 int arch_misc_init(void)
 {
        char qspi_string[13];
+       unsigned long id;
 
        sprintf(qspi_string, "<0x%08x>", cm_get_qspi_controller_clk_hz());
        env_set("qspi_clock", qspi_string);
 
+       /* Export board_id as environment variable */
+       id = socfpga_get_board_id();
+       env_set_ulong("board_id", id);
+
        return 0;
 }
 #endif