mirror of
https://github.com/riscv-software-src/opensbi.git
synced 2025-08-24 23:41:23 +01:00

We generally don't get misaligned load/store traps from Linux/U-Boot compiled using GCC 8.2 or higher but this is not true with older GCC toolchains. To tackle this we add misaligned load/store trap handling adopted from BBL sources but much more simpler. (Note: BBL sources can be found at https://github.com/riscv/riscv-pk.git) Signed-off-by: Anup Patel <anup.patel@wdc.com>
27 lines
573 B
C
27 lines
573 B
C
/*
|
|
* Copyright (c) 2018 Western Digital Corporation or its affiliates.
|
|
*
|
|
* Authors:
|
|
* Anup Patel <anup.patel@wdc.com>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#ifndef __SBI_MISALIGNED_LDST_H__
|
|
#define __SBI_MISALIGNED_LDST_H__
|
|
|
|
#include <sbi/sbi_types.h>
|
|
|
|
struct sbi_trap_regs;
|
|
struct sbi_scratch;
|
|
|
|
int sbi_misaligned_load_handler(u32 hartid, ulong mcause,
|
|
struct sbi_trap_regs *regs,
|
|
struct sbi_scratch *scratch);
|
|
|
|
int sbi_misaligned_store_handler(u32 hartid, ulong mcause,
|
|
struct sbi_trap_regs *regs,
|
|
struct sbi_scratch *scratch);
|
|
|
|
#endif
|