diff --git a/arch/arm/fsl_frdm_k64f/irq_vector_table.c b/arch/arm/fsl_frdm_k64f/irq_vector_table.c index 85529bf1a61..13ab2b75844 100644 --- a/arch/arm/fsl_frdm_k64f/irq_vector_table.c +++ b/arch/arm/fsl_frdm_k64f/irq_vector_table.c @@ -63,12 +63,19 @@ vth __irq_vector_table _IrqVectorTable[CONFIG_NUM_IRQS] = { extern void _SpuriousIRQ(void); -/* placeholders: fill with real ISRs */ +#if defined(CONFIG_CONSOLE_HANDLER) +static void _uart_console_isr(void) +{ + uart_console_isr(NULL); + _IntExit(); +} +#endif /* CONFIG_CONSOLE_HANDLER */ +/* placeholders: fill with real ISRs */ vth __irq_vector_table _IrqVectorTable[CONFIG_NUM_IRQS] = { [0 ...(CONFIG_NUM_IRQS - 1)] = _SpuriousIRQ, #if defined(CONFIG_CONSOLE_HANDLER) - [CONFIG_UART_CONSOLE_IRQ] = (vth)uart_console_isr, + [CONFIG_UART_CONSOLE_IRQ] = _uart_console_isr, #endif }; diff --git a/arch/arm/ti_lm3s6965/irq_vector_table.c b/arch/arm/ti_lm3s6965/irq_vector_table.c index 85529bf1a61..13ab2b75844 100644 --- a/arch/arm/ti_lm3s6965/irq_vector_table.c +++ b/arch/arm/ti_lm3s6965/irq_vector_table.c @@ -63,12 +63,19 @@ vth __irq_vector_table _IrqVectorTable[CONFIG_NUM_IRQS] = { extern void _SpuriousIRQ(void); -/* placeholders: fill with real ISRs */ +#if defined(CONFIG_CONSOLE_HANDLER) +static void _uart_console_isr(void) +{ + uart_console_isr(NULL); + _IntExit(); +} +#endif /* CONFIG_CONSOLE_HANDLER */ +/* placeholders: fill with real ISRs */ vth __irq_vector_table _IrqVectorTable[CONFIG_NUM_IRQS] = { [0 ...(CONFIG_NUM_IRQS - 1)] = _SpuriousIRQ, #if defined(CONFIG_CONSOLE_HANDLER) - [CONFIG_UART_CONSOLE_IRQ] = (vth)uart_console_isr, + [CONFIG_UART_CONSOLE_IRQ] = _uart_console_isr, #endif };