forked from epagris/FreeRTOS-Kernel
+ Add configASSERT() into ARM Cortex-M ports to check the number of priority bit settings. + Clear the 'control' register before starting ARM Cortex-M4F ports in case the FPU is used before the scheduler is started. This just saves a few bytes on the main stack as it prevents space being left for a later save of FPU registers. + Added xSemaphoreGetMutexHolderFromISR(). + Corrected use of portNVIC_PENDSVSET to portNVIC_PENDSVSET_BIT in MPU ports.
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.