49 csr_write(mtvec, (
unsigned long)trap_vector);
void irq_enable(void)
Enable Global Interrupts (MIE bit).
void irq_registerExt(u32 gateway, irq_handler_t handler)
Override the default external IRQ handler for a specific gateway.
void irq_setType(cpu_irq_t enable)
Enable specific CPU interrupt sources.
void irq_setTrapVector(void(*trap_vector)(void))
Set the Machine Trap Vector (mtvec).
void irq_clearType(cpu_irq_t disable)
Disable specific CPU interrupt sources.
void irq_disable(void)
Disable Global Interrupts (MIE bit).
int(* interrupt_vector_table[64])(void)
Global Interrupt Vector Table.
int(* irq_handler_t)(void)
Standard Interrupt Handler Function Pointer.
cpu_irq_t
CPU Interrupt Type (Standard RISC-V MIE bits).
#define csr_clear(csr, val)
This function is used to clear a CSR.
#define csr_set(csr, val)
This function is used to set a CSR to a specified value.
#define csr_write(csr, val)
This function is used to write a value to a CSR.
RISC-V Core Interrupt Handling and Vector Table.