diff options
author | Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@intel.com> | 2025-02-18 16:35:01 +0800 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2025-02-25 10:53:59 -0600 |
commit | 8c172a423cb6268eb787142b748b50473b80d88c (patch) | |
tree | df81b336e680be1d9db7ed56115f89ae32261ea8 | |
parent | 6ec6b75e9a9b3b4dfd55d7eac112c2f1171163de (diff) |
arm: socfpga: Export board ID as U-Boot environment
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>
-rw-r--r-- | arch/arm/mach-socfpga/board.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-socfpga/include/mach/board.h | 11 | ||||
-rw-r--r-- | arch/arm/mach-socfpga/misc_soc64.c | 6 |
3 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-socfpga/board.c b/arch/arm/mach-socfpga/board.c index 24a15f7903f..d07b3fc3618 100644 --- a/arch/arm/mach-socfpga/board.c +++ b/arch/arm/mach-socfpga/board.c @@ -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 index 00000000000..2c3127e629f --- /dev/null +++ b/arch/arm/mach-socfpga/include/mach/board.h @@ -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_ */ diff --git a/arch/arm/mach-socfpga/misc_soc64.c b/arch/arm/mach-socfpga/misc_soc64.c index 573a8f79cae..793b8b8e390 100644 --- a/arch/arm/mach-socfpga/misc_soc64.c +++ b/arch/arm/mach-socfpga/misc_soc64.c @@ -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 |