1From da22e9f4eec22163feab5a0a4488627ea992daa9 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 16 Sep 2024 23:58:36 +0000
4Subject: [PATCH] Add riscv32 support
5
6Add missing definitions for the RISC-V 32-bit architecture.
7
8Upstream-Status: Submitted [https://github.com/systemd/systemd-bootchart/pull/54]
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10---
11 configure.ac       | 1 +
12 src/architecture.h | 4 ++++
13 2 files changed, 5 insertions(+)
14
15diff --git a/configure.ac b/configure.ac
16index 5c9c20f..f977c78 100644
17--- a/configure.ac
18+++ b/configure.ac
19@@ -45,6 +45,7 @@ SET_ARCH(IA32, i*86*)
20 SET_ARCH(MIPS, mips*)
21 SET_ARCH(AARCH64, aarch64*)
22 SET_ARCH(RISCV64, riscv64*)
23+SET_ARCH(RISCV32, riscv32*)
24
25 AC_CHECK_SIZEOF(pid_t)
26 AC_CHECK_SIZEOF(uid_t)
27diff --git a/src/architecture.h b/src/architecture.h
28index cbf1795..f33cd00 100644
29--- a/src/architecture.h
30+++ b/src/architecture.h
31@@ -58,6 +58,7 @@ enum {
32         ARCHITECTURE_TILEGX,
33         ARCHITECTURE_CRIS,
34         ARCHITECTURE_RISCV64,
35+        ARCHITECTURE_RISCV32,
36 	ARCHITECTURE_LOONGARCH,
37         _ARCHITECTURE_MAX,
38         _ARCHITECTURE_INVALID = -1
39@@ -151,6 +152,9 @@ int uname_architecture(void);
40 #elif defined(__riscv) && __riscv_xlen == 64
41 #  define native_architecture() ARCHITECTURE_RISCV64
42 #  define define LIB_ARCH_TUPLE "riscv64-linux-gnu"
43+#elif defined(__riscv) && __riscv_xlen == 32
44+#  define native_architecture() ARCHITECTURE_RISCV32
45+#  define define LIB_ARCH_TUPLE "riscv32-linux-gnu"
46 #elif defined(__loongarch__) && __loongarch_grlen == 64
47 #  define native_architecture() ARCHITECTURE_LOONGARCH
48 #  define define LIB_ARCH_TUPLE "loongarch64-linux-gnu"
49