RV32 SoC DS UG
High-Perf RV32 SoC DS UG
RV64 SoC DS UG API and Examples
Embedded IDE UG
Loading...
Searching...
No Matches
mtrap.c File Reference
#include <stddef.h>
#include "bsp.h"
#include "mtrap.h"

Go to the source code of this file.

Overview

Trap and Exception Handling Implementation.

Implements the functions defined in mtrap.h for handling traps and exceptions on the EfxSapphireSoC platform.

Definition in file mtrap.c.

Functions

int irq_handleDefault (void)
 Default Fallback Interrupt Handler.
int irq_m_invalid_handler (void)
int irq_m_uart0_handler (void)
int irq_m_uart1_handler (void)
int irq_m_uart2_handler (void)
int irq_m_spi0_handler (void)
int irq_m_spi1_handler (void)
int irq_m_spi2_handler (void)
int irq_m_i2c0_handler (void)
int irq_m_i2c1_handler (void)
int irq_m_i2c2_handler (void)
int irq_m_i2c3_handler (void)
int irq_m_i2c4_handler (void)
int irq_m_gpio0_0_handler (void)
int irq_m_gpio0_1_handler (void)
int irq_m_gpio1_0_handler (void)
int irq_m_gpio1_1_handler (void)
int irq_m_userTimer0_handler (void)
int irq_m_userTimer1_handler (void)
int irq_m_userTimer2_handler (void)
int irq_m_watchDog0_handler (void)
int irq_m_axiA_handler (void)
int irq_m_l2Cache_handler (void)
int irq_m_user_a_handler (void)
int irq_m_user_b_handler (void)
int irq_m_user_c_handler (void)
int irq_m_user_d_handler (void)
int irq_m_user_e_handler (void)
int irq_m_user_f_handler (void)
int irq_m_user_g_handler (void)
int irq_m_user_h_handler (void)
void trap_entry (void)
 The Main Trap Entry Point (Naked).
void irq_handleExt ()
 External Interrupt Handler (PLIC).
void irq_handleException ()
void crash ()
 Fatal Exception Handler.
void trap ()
 Main C Trap Dispatcher.

Variables

int(* interrupt_vector_table [64])(void)
 Global Interrupt Vector Table.

Function Documentation

◆ irq_handleException()

void irq_handleException ( )

Definition at line 264 of file mtrap.c.

◆ irq_m_axiA_handler()

int irq_m_axiA_handler ( void )

◆ irq_m_gpio0_0_handler()

int irq_m_gpio0_0_handler ( void )

◆ irq_m_gpio0_1_handler()

int irq_m_gpio0_1_handler ( void )

◆ irq_m_gpio1_0_handler()

int irq_m_gpio1_0_handler ( void )

◆ irq_m_gpio1_1_handler()

int irq_m_gpio1_1_handler ( void )

◆ irq_m_i2c0_handler()

int irq_m_i2c0_handler ( void )

◆ irq_m_i2c1_handler()

int irq_m_i2c1_handler ( void )

◆ irq_m_i2c2_handler()

int irq_m_i2c2_handler ( void )

◆ irq_m_i2c3_handler()

int irq_m_i2c3_handler ( void )

◆ irq_m_i2c4_handler()

int irq_m_i2c4_handler ( void )

◆ irq_m_invalid_handler()

int irq_m_invalid_handler ( void )

◆ irq_m_l2Cache_handler()

int irq_m_l2Cache_handler ( void )

◆ irq_m_spi0_handler()

int irq_m_spi0_handler ( void )

◆ irq_m_spi1_handler()

int irq_m_spi1_handler ( void )

◆ irq_m_spi2_handler()

int irq_m_spi2_handler ( void )

◆ irq_m_uart0_handler()

int irq_m_uart0_handler ( void )

◆ irq_m_uart1_handler()

int irq_m_uart1_handler ( void )

◆ irq_m_uart2_handler()

int irq_m_uart2_handler ( void )

◆ irq_m_user_a_handler()

int irq_m_user_a_handler ( void )

◆ irq_m_user_b_handler()

int irq_m_user_b_handler ( void )

◆ irq_m_user_c_handler()

int irq_m_user_c_handler ( void )

◆ irq_m_user_d_handler()

int irq_m_user_d_handler ( void )

◆ irq_m_user_e_handler()

int irq_m_user_e_handler ( void )

◆ irq_m_user_f_handler()

int irq_m_user_f_handler ( void )

◆ irq_m_user_g_handler()

int irq_m_user_g_handler ( void )

◆ irq_m_user_h_handler()

int irq_m_user_h_handler ( void )

◆ irq_m_userTimer0_handler()

int irq_m_userTimer0_handler ( void )

◆ irq_m_userTimer1_handler()

int irq_m_userTimer1_handler ( void )

◆ irq_m_userTimer2_handler()

int irq_m_userTimer2_handler ( void )

◆ irq_m_watchDog0_handler()

int irq_m_watchDog0_handler ( void )