Select between the 32-bit or 64-bit arch type for the image headers
depending on how the build is configured.

Signed-off-by: Mayuresh Chitale <mchit...@ventanamicro.com>
---
 arch/riscv/dts/binman.dtsi      | 14 ++++++++++----
 arch/riscv/include/asm/u-boot.h |  4 ++++
 2 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/arch/riscv/dts/binman.dtsi b/arch/riscv/dts/binman.dtsi
index 0405faca574..a1a566b511b 100644
--- a/arch/riscv/dts/binman.dtsi
+++ b/arch/riscv/dts/binman.dtsi
@@ -5,6 +5,12 @@
 
 #include <config.h>
 
+#ifdef CONFIG_64BIT
+#define ARCH "riscv64"
+#else
+#define ARCH "riscv"
+
+#endif
 / {
        binman: binman {
                multiple-images;
@@ -31,7 +37,7 @@
                                        description = "U-Boot";
                                        type = "standalone";
                                        os = "U-Boot";
-                                       arch = "riscv";
+                                       arch = ARCH;
                                        compression = "none";
                                        load = /bits/ 64 <CONFIG_TEXT_BASE>;
 
@@ -44,7 +50,7 @@
                                        description = "Linux";
                                        type = "standalone";
                                        os = "Linux";
-                                       arch = "riscv";
+                                       arch = ARCH;
                                        compression = "none";
                                        load = /bits/ 64 <CONFIG_TEXT_BASE>;
 
@@ -57,7 +63,7 @@
                                tee {
                                        description = "OP-TEE";
                                        type = "tee";
-                                       arch = "riscv";
+                                       arch = ARCH;
                                        compression = "none";
                                        os = "tee";
                                        load = /bits/ 64 
<CONFIG_SPL_OPTEE_LOAD_ADDR>;
@@ -71,7 +77,7 @@
                                        description = "OpenSBI fw_dynamic 
Firmware";
                                        type = "firmware";
                                        os = "opensbi";
-                                       arch = "riscv";
+                                       arch = ARCH;
                                        compression = "none";
                                        load = /bits/ 64 
<CONFIG_SPL_OPENSBI_LOAD_ADDR>;
                                        entry = /bits/ 64 
<CONFIG_SPL_OPENSBI_LOAD_ADDR>;
diff --git a/arch/riscv/include/asm/u-boot.h b/arch/riscv/include/asm/u-boot.h
index d5e1d5f3231..a90cc4c21cf 100644
--- a/arch/riscv/include/asm/u-boot.h
+++ b/arch/riscv/include/asm/u-boot.h
@@ -23,6 +23,10 @@
 #include <asm/u-boot-riscv.h>
 
 /* For image.h:image_check_target_arch() */
+#ifdef CONFIG_64BIT
+#define IH_ARCH_DEFAULT IH_ARCH_RISCV64
+#else
 #define IH_ARCH_DEFAULT IH_ARCH_RISCV
+#endif
 
 #endif /* _U_BOOT_H_ */
-- 
2.43.0

Reply via email to