Skip to content

Commit b55e6db

Browse files
carlocaionenashif
authored andcommitted
irq: Add extern define to _isr_wrapper
When CONFIG_GEN_IRQ_VECTOR_TABLE and CONFIG_GEN_SW_ISR_TABLE are enabled the generate IRQ table is trying to reference the _isr_wrapper function. Add an extern to that to avoid a failure when compiling and remove the previous arch-specific declarations. arch/common/isr_tables.c:48:38: error: '_isr_wrapper' undeclared here (not in a function) Signed-off-by: Carlo Caione <[email protected]>
1 parent 17d64e0 commit b55e6db

File tree

4 files changed

+3
-17
lines changed

4 files changed

+3
-17
lines changed

include/zephyr/arch/arc/v2/irq.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ extern void sys_trace_isr_exit(void);
3737

3838
extern void z_irq_priority_set(unsigned int irq, unsigned int prio,
3939
uint32_t flags);
40-
extern void _isr_wrapper(void);
4140
extern void z_irq_spurious(const void *unused);
4241

4342
/* Z_ISR_DECLARE will populate the .intList section with the interrupt's

include/zephyr/arch/arm/aarch32/irq.h

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -246,14 +246,6 @@ extern void z_arm_irq_direct_dynamic_dispatch_no_reschedule(void);
246246
/* Spurious interrupt handler. Throws an error if called */
247247
extern void z_irq_spurious(const void *unused);
248248

249-
#ifdef CONFIG_GEN_SW_ISR_TABLE
250-
/* Architecture-specific common entry point for interrupts from the vector
251-
* table. Most likely implemented in assembly. Looks up the correct handler
252-
* and parameter from the _sw_isr_table and executes it.
253-
*/
254-
extern void _isr_wrapper(void);
255-
#endif
256-
257249
#if defined(CONFIG_ARM_SECURE_FIRMWARE)
258250
/* Architecture-specific definition for the target security
259251
* state of an NVIC IRQ line.

include/zephyr/arch/arm64/irq.h

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -97,14 +97,6 @@ extern void z_arm64_interrupt_init(void);
9797
/* Spurious interrupt handler. Throws an error if called */
9898
extern void z_irq_spurious(const void *unused);
9999

100-
#ifdef CONFIG_GEN_SW_ISR_TABLE
101-
/* Architecture-specific common entry point for interrupts from the vector
102-
* table. Most likely implemented in assembly. Looks up the correct handler
103-
* and parameter from the _sw_isr_table and executes it.
104-
*/
105-
extern void _isr_wrapper(void);
106-
#endif
107-
108100
#endif /* _ASMLANGUAGE */
109101

110102
#ifdef __cplusplus

include/zephyr/sw_isr_table.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
extern "C" {
2323
#endif
2424

25+
/* Default vector for the IRQ vector table */
26+
extern void _isr_wrapper(void);
27+
2528
/*
2629
* Note the order: arg first, then ISR. This allows a table entry to be
2730
* loaded arg -> r0, isr -> r3 in _isr_wrapper with one ldmia instruction,

0 commit comments

Comments
 (0)