esp-open-rtos/FreeRTOS/Source
Angus Gratton 23ea182e83 Simplify interrupt and RTOS timer tick handlers
RTOS Timer tick handler is now the same as any other ISR.

This causes a few subtle behaviour changes that seem OK but are worth noting:

* RTOS tick handler sdk__xt_timer_int() is now called from one stack
  frame deeper (inside _xt_isr_handler()), whereas before it was called
  from the level above in UserHandleInterrupt. I can't see any way that
  the extra ~40 bytes of stack use here hurt, though.

* sdk__xt_timer_int() was previous called after all other interrupts
  flagged in the handler, now it's called before the TIMER FRC1 & FRC2
  handlers. The tick handler doesn't appear to do anything particularly
  timing intensive, though.

* GPIO interrupt (value 3) is now lower priority than the SPI
  interrupt (value 2), whereas before it would have been called before
  SPI if both interrupts triggered at once.
2015-09-29 13:21:04 +10:00
..
include Create a default FreeRTOSConfig.h, can override on a per-program basis 2015-06-16 17:28:32 +10:00
portable/esp8266 Simplify interrupt and RTOS timer tick handlers 2015-09-29 13:21:04 +10:00
croutine.c Replace FreeRTOS core/non-portable files with unmodified variants from vanilla 7.5.2 2015-05-07 14:23:24 +10:00
list.c Move all code paths touched by NMI to IRAM 2015-07-29 16:47:33 +10:00
queue.c Move all code paths touched by NMI to IRAM 2015-07-29 16:47:33 +10:00
readme.txt Unmodified cross-platform parts of FreeRTOS 7.5.2 (Demos and 2015-04-30 11:01:12 +10:00
tasks.c Move all code paths touched by NMI to IRAM 2015-07-29 16:47:33 +10:00
timers.c Replace FreeRTOS core/non-portable files with unmodified variants from vanilla 7.5.2 2015-05-07 14:23:24 +10:00

Each real time kernel port consists of three files that contain the core kernel
components and are common to every port, and one or more files that are 
specific to a particular microcontroller and or compiler.

+ The FreeRTOS/Source directory contains the three files that are common to 
every port - list.c, queue.c and tasks.c.  The kernel is contained within these 
three files.  croutine.c implements the optional co-routine functionality - which
is normally only used on very memory limited systems.

+ The FreeRTOS/Source/Portable directory contains the files that are specific to 
a particular microcontroller and or compiler.

+ The FreeRTOS/Source/include directory contains the real time kernel header 
files.

See the readme file in the FreeRTOS/Source/Portable directory for more 
information.