|
Zephyr API Documentation
2.7.0-rc2
A Scalable Open Source RTOS
|
RISCV specific kernel interface header This header contains the RISCV specific kernel interface. It is included by the generic kernel interface header (arch/cpu.h) More...
#include <arch/riscv/thread.h>#include <arch/riscv/exp.h>#include <arch/common/sys_bitops.h>#include <arch/common/sys_io.h>#include <arch/common/ffs.h>#include <arch/riscv/syscall.h>#include <irq.h>#include <sw_isr_table.h>#include <soc.h>#include <devicetree.h>#include <arch/riscv/csr.h>#include <sys/util.h>#include <arch/riscv/error.h>Go to the source code of this file.
Data Structures | |
| struct | k_mem_partition_attr_t |
Functions | |
| void | arch_irq_enable (unsigned int irq) |
| void | arch_irq_disable (unsigned int irq) |
| int | arch_irq_is_enabled (unsigned int irq) |
| void | arch_irq_priority_set (unsigned int irq, unsigned int prio) |
| static ALWAYS_INLINE unsigned int | arch_irq_lock (void) |
| static ALWAYS_INLINE void | arch_irq_unlock (unsigned int key) |
| static ALWAYS_INLINE bool | arch_irq_unlocked (unsigned int key) |
| static ALWAYS_INLINE void | arch_nop (void) |
| uint32_t | sys_clock_cycle_get_32 (void) |
| static uint32_t | arch_k_cycle_get_32 (void) |
RISCV specific kernel interface header This header contains the RISCV specific kernel interface. It is included by the generic kernel interface header (arch/cpu.h)
| #define ARCH_IRQ_CONNECT | ( | irq_p, | |
| priority_p, | |||
| isr_p, | |||
| isr_param_p, | |||
| flags_p | |||
| ) |
| #define ARCH_STACK_PTR_ALIGN 16 |
| #define ARCH_THREAD_STACK_OBJ_ALIGN | ( | size | ) | Z_RISCV_PMP_ALIGN |
| #define ARCH_THREAD_STACK_RESERVED CONFIG_PRIVILEGED_STACK_SIZE |
| #define ARCH_THREAD_STACK_SIZE_ADJUST | ( | size | ) | (ROUND_UP((size), Z_RISCV_PMP_ALIGN)) |
| #define CONCAT | ( | x, | |
| y | |||
| ) | DO_CONCAT(x, y) |
| #define DO_CONCAT | ( | x, | |
| y | |||
| ) | x ## y |
| #define K_MEM_PARTITION_P_NA_U_NA |
| #define K_MEM_PARTITION_P_RO_U_NA |
| #define K_MEM_PARTITION_P_RO_U_RO |
| #define K_MEM_PARTITION_P_RW_U_NA |
| #define K_MEM_PARTITION_P_RW_U_RO |
| #define K_MEM_PARTITION_P_RW_U_RW |
| #define K_MEM_PARTITION_P_RWX_U_RWX |
| #define K_MEM_PARTITION_P_RX_U_RX |
| #define MSTATUS_DEF_RESTORE (MSTATUS_MPP_M | MSTATUS_MPIE_EN) |
| #define MSTATUS_FS_INIT (1UL << 13) |
| #define MSTATUS_FS_MASK ((1UL << 13) | (1UL << 14)) |
| #define MSTATUS_IEN (1UL << 3) |
| #define MSTATUS_MPIE_EN (1UL << 7) |
| #define MSTATUS_MPP_M (3UL << 11) |
| #define RV_OP_LOADFPREG flw |
| #define RV_OP_LOADREG lw |
| #define RV_OP_STOREFPREG fsw |
| #define RV_OP_STOREREG sw |
| #define RV_REGSHIFT 2 |
| #define RV_REGSIZE 4 |
| #define STACK_ROUND_UP | ( | x | ) | ROUND_UP(x, ARCH_STACK_PTR_ALIGN) |
| int arch_irq_is_enabled | ( | unsigned int | irq | ) |
|
static |
|
static |
|
static |
|
static |