From cda59b56ba1af83a64579901a5395c1b3c1bf519 Mon Sep 17 00:00:00 2001 From: Xiang Wang Date: Thu, 9 Aug 2018 16:20:35 +0800 Subject: riscv: update misaligned memory access exception handling MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Support for more situations: floating point, compressed instructions, etc. Add support for redirect exception to S-Mode. Change-Id: I9983d56245eab1d458a84cb1432aeb805df7a49f Signed-off-by: Xiang Wang Reviewed-on: https://review.coreboot.org/27972 Tested-by: build bot (Jenkins) Reviewed-by: Jonathan Neuschäfer --- src/arch/riscv/include/arch/exception.h | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'src/arch/riscv/include') diff --git a/src/arch/riscv/include/arch/exception.h b/src/arch/riscv/include/arch/exception.h index fc57b3b55c..6fbbdf0a89 100644 --- a/src/arch/riscv/include/arch/exception.h +++ b/src/arch/riscv/include/arch/exception.h @@ -32,8 +32,7 @@ #include -typedef struct -{ +typedef struct { uintptr_t gpr[32]; uintptr_t status; uintptr_t epc; @@ -53,9 +52,9 @@ static inline void exception_init(void) { } -void trap_handler(trapframe* tf); -void handle_supervisor_call(trapframe* tf); -void handle_misaligned_load(trapframe *tf); -void handle_misaligned_store(trapframe *tf); +void redirect_trap(void); +void trap_handler(trapframe *tf); +void handle_supervisor_call(trapframe *tf); +void handle_misaligned(trapframe *tf); #endif -- cgit v1.2.3