diff options
Diffstat (limited to 'roms/opensbi/include/sbi/sbi_unpriv.h')
-rw-r--r-- | roms/opensbi/include/sbi/sbi_unpriv.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/roms/opensbi/include/sbi/sbi_unpriv.h b/roms/opensbi/include/sbi/sbi_unpriv.h new file mode 100644 index 000000000..8cbd3de0c --- /dev/null +++ b/roms/opensbi/include/sbi/sbi_unpriv.h @@ -0,0 +1,41 @@ +/* + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2019 Western Digital Corporation or its affiliates. + * + * Authors: + * Anup Patel <anup.patel@wdc.com> + */ + +#ifndef __SBI_UNPRIV_H__ +#define __SBI_UNPRIV_H__ + +#include <sbi/sbi_types.h> + +struct sbi_scratch; +struct sbi_trap_info; + +#define DECLARE_UNPRIVILEGED_LOAD_FUNCTION(type) \ + type sbi_load_##type(const type *addr, \ + struct sbi_trap_info *trap); + +#define DECLARE_UNPRIVILEGED_STORE_FUNCTION(type) \ + void sbi_store_##type(type *addr, type val, \ + struct sbi_trap_info *trap); + +DECLARE_UNPRIVILEGED_LOAD_FUNCTION(u8) +DECLARE_UNPRIVILEGED_LOAD_FUNCTION(u16) +DECLARE_UNPRIVILEGED_LOAD_FUNCTION(s8) +DECLARE_UNPRIVILEGED_LOAD_FUNCTION(s16) +DECLARE_UNPRIVILEGED_LOAD_FUNCTION(s32) +DECLARE_UNPRIVILEGED_STORE_FUNCTION(u8) +DECLARE_UNPRIVILEGED_STORE_FUNCTION(u16) +DECLARE_UNPRIVILEGED_STORE_FUNCTION(u32) +DECLARE_UNPRIVILEGED_LOAD_FUNCTION(u32) +DECLARE_UNPRIVILEGED_LOAD_FUNCTION(u64) +DECLARE_UNPRIVILEGED_STORE_FUNCTION(u64) +DECLARE_UNPRIVILEGED_LOAD_FUNCTION(ulong) + +ulong sbi_get_insn(ulong mepc, struct sbi_trap_info *trap); + +#endif |