1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #include <toolchain.h>
- #include <linker/sections.h>
- #include <sw_isr_table.h>
- #include <arch/cpu.h>
- struct int_list_header {
- uint32_t table_size;
- uint32_t offset;
- };
- #ifndef __UVISION_VERSION
- Z_GENERIC_SECTION(.irq_info) struct int_list_header _iheader = {
- .table_size = IRQ_TABLE_SIZE,
- .offset = CONFIG_GEN_IRQ_START_VECTOR,
- };
- #endif
- #ifdef CONFIG_GEN_IRQ_VECTOR_TABLE
- #ifdef CONFIG_GEN_SW_ISR_TABLE
- #define IRQ_VECTOR_TABLE_DEFAULT_ISR _isr_wrapper
- #else
- #define IRQ_VECTOR_TABLE_DEFAULT_ISR z_irq_spurious
- #endif
- uintptr_t __irq_vector_table _irq_vector_table[IRQ_TABLE_SIZE] = {
- [0 ...(IRQ_TABLE_SIZE - 1)] = (uintptr_t)&IRQ_VECTOR_TABLE_DEFAULT_ISR,
- };
- #endif
- #ifdef CONFIG_GEN_SW_ISR_TABLE
- struct _isr_table_entry __sw_isr_table _sw_isr_table[IRQ_TABLE_SIZE] = {
- [0 ...(IRQ_TABLE_SIZE - 1)] = {(const void *)0x42,
- (void *)&z_irq_spurious},
- };
- #endif
|