From e03b097e8e298d9fade0f65634a8ba3717a0b2fb Mon Sep 17 00:00:00 2001 From: Florent Kermarrec Date: Tue, 14 May 2024 14:47:01 +0200 Subject: [PATCH] software/libbase/isr.c: Simplify using __riscv_plic__ define. --- litex/soc/cores/cpu/openc906/core.py | 1 + litex/soc/cores/cpu/rocket/core.py | 1 + litex/soc/cores/cpu/vexriscv_smp/core.py | 1 + litex/soc/software/libbase/isr.c | 2 +- 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/litex/soc/cores/cpu/openc906/core.py b/litex/soc/cores/cpu/openc906/core.py index 06d32e998..b8144b81b 100644 --- a/litex/soc/cores/cpu/openc906/core.py +++ b/litex/soc/cores/cpu/openc906/core.py @@ -89,6 +89,7 @@ class OpenC906(CPU): flags = "-mno-save-restore " flags += "-march=rv64gc -mabi=lp64d " flags += "-D__openc906__ " + flags += "-D__riscv_plic__ " flags += "-mcmodel=medany" return flags diff --git a/litex/soc/cores/cpu/rocket/core.py b/litex/soc/cores/cpu/rocket/core.py index 16d9ffdcd..31e6e30b9 100644 --- a/litex/soc/cores/cpu/rocket/core.py +++ b/litex/soc/cores/cpu/rocket/core.py @@ -113,6 +113,7 @@ class Rocket(CPU): flags = "-mno-save-restore " flags += f"-march={self.get_arch(self.variant)} -mabi=lp64 " flags += "-D__rocket__ " + flags += "-D__riscv_plic__ " flags += "-mcmodel=medany" return flags diff --git a/litex/soc/cores/cpu/vexriscv_smp/core.py b/litex/soc/cores/cpu/vexriscv_smp/core.py index 3835ac253..f45bce1ab 100755 --- a/litex/soc/cores/cpu/vexriscv_smp/core.py +++ b/litex/soc/cores/cpu/vexriscv_smp/core.py @@ -169,6 +169,7 @@ class VexRiscvSMP(CPU): def gcc_flags(self): flags = f" -march={VexRiscvSMP.get_arch()} -mabi={VexRiscvSMP.get_abi()}" flags += f" -D__vexriscv_smp__" + flags += f" -D__riscv_plic__" return flags # Reserved Interrupts. diff --git a/litex/soc/software/libbase/isr.c b/litex/soc/software/libbase/isr.c index 359ac1cc1..71adac143 100644 --- a/litex/soc/software/libbase/isr.c +++ b/litex/soc/software/libbase/isr.c @@ -29,7 +29,7 @@ void isr(void) onetime++; } } -#elif defined(__rocket__) || defined(__openc906__) || defined(__vexriscv_smp__) +#elif defined(__riscv_plic__) // PLIC initialization. void plic_init(void);