diff --git a/src/rp2_common/hardware_exception/include/hardware/exception.h b/src/rp2_common/hardware_exception/include/hardware/exception.h index 377ec0156..d555c8cc4 100644 --- a/src/rp2_common/hardware_exception/include/hardware/exception.h +++ b/src/rp2_common/hardware_exception/include/hardware/exception.h @@ -39,13 +39,19 @@ extern "C" { * * On Arm these are vector table indices: * - * Name | Value | Exception - * ---------------------|-------|----------------------- - * NMI_EXCEPTION | 2 | Non Maskable Interrupt - * HARDFAULT_EXCEPTION | 3 | HardFault - * SVCALL_EXCEPTION | 11 | SV Call - * PENDSV_EXCEPTION | 14 | Pend SV - * SYSTICK_EXCEPTION | 15 | System Tick + * Name | Value | Exception + * ----------------------|-------|----------------------- + * NMI_EXCEPTION | 2 | Non Maskable Interrupt + * HARDFAULT_EXCEPTION | 3 | HardFault + * \if rp2350_specific + * MEMMANAGE_EXCEPTION | 4 | MemManage + * BUSFAULT_EXCEPTION | 5 | BusFault + * USAGEFAULT_EXCEPTION | 6 | UsageFault + * SECUREFAULT_EXCEPTION | 7 | SecureFault + * \endif + * SVCALL_EXCEPTION | 11 | SV Call + * PENDSV_EXCEPTION | 14 | Pend SV + * SYSTICK_EXCEPTION | 15 | System Tick * * \if rp2350_specific * On RISC-V these are exception cause numbers: @@ -88,11 +94,17 @@ enum exception_number { enum exception_number { // Assigned to VTOR indices MIN_EXCEPTION_NUM = 2, - NMI_EXCEPTION = 2, ///< Non Maskable Interrupt - HARDFAULT_EXCEPTION = 3, ///< HardFault Interrupt - SVCALL_EXCEPTION = 11, ///< SV Call Interrupt - PENDSV_EXCEPTION = 14, ///< Pend SV Interrupt - SYSTICK_EXCEPTION = 15, ///< System Tick Interrupt + NMI_EXCEPTION = 2, ///< Non Maskable Interrupt + HARDFAULT_EXCEPTION = 3, ///< HardFault Interrupt +#if PICO_RP2350 + MEMMANAGE_EXCEPTION = 4, ///< MemManage Interrupt + BUSFAULT_EXCEPTION = 5, ///< BusFault Interrupt + USAGEFAULT_EXCEPTION = 6, ///< UsageFault Interrupt + SECUREFAULT_EXCEPTION = 7, ///< SecureFault Interrupt +#endif + SVCALL_EXCEPTION = 11, ///< SV Call Interrupt + PENDSV_EXCEPTION = 14, ///< Pend SV Interrupt + SYSTICK_EXCEPTION = 15, ///< System Tick Interrupt MAX_EXCEPTION_NUM = 15 }; #endif