From 3a5b46a09addc93d5b534797233e1d49c1b3f325 Mon Sep 17 00:00:00 2001 From: Angus Gratton Date: Thu, 7 May 2015 14:05:23 +1000 Subject: [PATCH] Xtensa interrupt management function prototypes --- FreeRTOS/Source/portable/esp8266/port.c | 1 + FreeRTOS/Source/portable/esp8266/portmacro.h | 24 +++++++++----------- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/FreeRTOS/Source/portable/esp8266/port.c b/FreeRTOS/Source/portable/esp8266/port.c index 30eea21..690e97e 100644 --- a/FreeRTOS/Source/portable/esp8266/port.c +++ b/FreeRTOS/Source/portable/esp8266/port.c @@ -221,6 +221,7 @@ void vPortExitCritical( void ) handled in libmain.a (xtensa_vectors.o) which then can call into here passing an interrupt mask. */ + _xt_isr isr[16]; void _xt_isr_attach(uint8_t i, _xt_isr func) diff --git a/FreeRTOS/Source/portable/esp8266/portmacro.h b/FreeRTOS/Source/portable/esp8266/portmacro.h index dab5eb3..e51cef3 100644 --- a/FreeRTOS/Source/portable/esp8266/portmacro.h +++ b/FreeRTOS/Source/portable/esp8266/portmacro.h @@ -190,20 +190,18 @@ not necessary for to use this port. They are defined so the common demo files #define portTASK_FUNCTION( vFunction, pvParameters ) void vFunction( void *pvParameters ) /*-----------------------------------------------------------*/ -void _xt_user_exit (void); -void _xt_tick_timer_init (void); -void _xt_isr_unmask (uint32_t unmask); -void _xt_isr_mask (uint32_t mask); -uint32_t _xt_read_ints (void); -void _xt_clear_ints(uint32_t mask); - - -/* interrupt related */ +/* XTensa interrupt management functions, used in port.c. + Implementations in blob libs */ +void _xt_int_exit (void); +void _xt_user_exit (void); +void _xt_tick_timer_init (void); +void _xt_isr_unmask (uint32_t unmask); +void _xt_isr_mask (uint32_t mask); +uint32_t _xt_read_ints (void); +void _xt_clear_ints(uint32_t mask); typedef void (* _xt_isr)(void); - -void _xt_isr_attach (uint8_t i, _xt_isr func); - - +void _xt_isr_attach (uint8_t i, _xt_isr func); +void _xt_timer_int1(void); #ifdef __cplusplus }