|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v1 11/14] xen/riscv: introduce setup_trap_handler()
Signed-off-by: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
---
xen/arch/riscv/setup.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/xen/arch/riscv/setup.c b/xen/arch/riscv/setup.c
index d09ffe1454..174e134c93 100644
--- a/xen/arch/riscv/setup.c
+++ b/xen/arch/riscv/setup.c
@@ -1,16 +1,27 @@
#include <xen/compile.h>
#include <xen/init.h>
+#include <asm/csr.h>
#include <asm/early_printk.h>
+#include <asm/traps.h>
/* Xen stack for bringing up the first CPU. */
unsigned char __initdata cpu0_boot_stack[STACK_SIZE]
__aligned(STACK_SIZE);
+static void setup_trap_handler(void)
+{
+ unsigned long addr = (unsigned long)&handle_exception;
+ csr_write(CSR_STVEC, addr);
+}
+
void __init noreturn start_xen(void)
{
early_printk("Hello from C env\n");
+ setup_trap_handler();
+ early_printk("exception handler has been setup\n");
+
for ( ;; )
asm volatile ("wfi");
--
2.39.0
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |