*****************************************************************************/\r
\r
/*\r
- FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd. \r
+ FreeRTOS V8.1.2 - Copyright (C) 2014 Real Time Engineers Ltd.\r
All rights reserved\r
\r
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.\r
the terms of the GNU General Public License (version 2) as published by the\r
Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.\r
\r
- >>! NOTE: The modification to the GPL is included to allow you to distribute\r
- >>! a combined work that includes FreeRTOS without being obliged to provide\r
- >>! the source code for proprietary components outside of the FreeRTOS\r
- >>! kernel.\r
+ >>! NOTE: The modification to the GPL is included to allow you to !<<\r
+ >>! distribute a combined work that includes FreeRTOS without being !<<\r
+ >>! obliged to provide the source code for proprietary components !<<\r
+ >>! outside of the FreeRTOS kernel. !<<\r
\r
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY\r
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS\r
#define portDOUBLE double\r
#define portLONG long\r
#define portSHORT short\r
-#define portSTACK_TYPE unsigned portLONG\r
-#define portBASE_TYPE portLONG\r
+#define portSTACK_TYPE uint32_t\r
+#define portBASE_TYPE long\r
\r
-#define TASK_DELAY_MS(x) ( (x) /portTICK_RATE_MS )\r
-#define TASK_DELAY_S(x) ( (x)*1000 /portTICK_RATE_MS )\r
-#define TASK_DELAY_MIN(x) ( (x)*60*1000/portTICK_RATE_MS )\r
+typedef portSTACK_TYPE StackType_t;\r
+typedef long BaseType_t;\r
+typedef unsigned long UBaseType_t;\r
+\r
+\r
+#define TASK_DELAY_MS(x) ( (x) /portTICK_PERIOD_MS )\r
+#define TASK_DELAY_S(x) ( (x)*1000 /portTICK_PERIOD_MS )\r
+#define TASK_DELAY_MIN(x) ( (x)*60*1000/portTICK_PERIOD_MS )\r
\r
#define configTICK_TC_IRQ ATPASTE2(AVR32_TC_IRQ, configTICK_TC_CHANNEL)\r
\r
#if( configUSE_16_BIT_TICKS == 1 )\r
- typedef unsigned portSHORT portTickType;\r
- #define portMAX_DELAY ( portTickType ) 0xffff\r
+ typedef uint16_t TickType_t;\r
+ #define portMAX_DELAY ( TickType_t ) 0xffff\r
#else\r
- typedef unsigned portLONG portTickType;\r
- #define portMAX_DELAY ( portTickType ) 0xffffffff\r
+ typedef uint32_t TickType_t;\r
+ #define portMAX_DELAY ( TickType_t ) 0xffffffffUL\r
#endif\r
/*-----------------------------------------------------------*/\r
\r
/* Architecture specifics. */\r
#define portSTACK_GROWTH ( -1 )\r
-#define portTICK_RATE_MS ( ( portTickType ) 1000 / configTICK_RATE_HZ )\r
+#define portTICK_PERIOD_MS ( ( TickType_t ) 1000 / configTICK_RATE_HZ )\r
#define portBYTE_ALIGNMENT 4\r
#define portNOP() {__asm__ __volatile__ ("nop");}\r
/*-----------------------------------------------------------*/\r
*/\r
#define portRESTORE_CONTEXT() \\r
{ \\r
- extern volatile unsigned portLONG ulCriticalNesting; \\r
+ extern volatile uint32_t ulCriticalNesting; \\r
extern volatile void *volatile pxCurrentTCB; \\r
\\r
__asm__ __volatile__ ( \\r
*/\r
#define portSAVE_CONTEXT_OS_INT() \\r
{ \\r
- extern volatile unsigned portLONG ulCriticalNesting; \\r
+ extern volatile uint32_t ulCriticalNesting; \\r
extern volatile void *volatile pxCurrentTCB; \\r
\\r
/* When we come here */ \\r
*/\r
#define portRESTORE_CONTEXT_OS_INT() \\r
{ \\r
- extern volatile unsigned portLONG ulCriticalNesting; \\r
+ extern volatile uint32_t ulCriticalNesting; \\r
extern volatile void *volatile pxCurrentTCB; \\r
\\r
/* Check if INT0 or higher were being handled (case where the OS tick interrupted another */ \\r
*/\r
#define portSAVE_CONTEXT_SCALL() \\r
{ \\r
- extern volatile unsigned portLONG ulCriticalNesting; \\r
+ extern volatile uint32_t ulCriticalNesting; \\r
extern volatile void *volatile pxCurrentTCB; \\r
\\r
/* Warning: the stack layout after SCALL doesn't match the one after an interrupt. */ \\r
*/\r
#define portRESTORE_CONTEXT_SCALL() \\r
{ \\r
- extern volatile unsigned portLONG ulCriticalNesting; \\r
+ extern volatile uint32_t ulCriticalNesting; \\r
extern volatile void *volatile pxCurrentTCB; \\r
\\r
/* Restore all registers */ \\r
*/\r
#define portENTER_SWITCHING_ISR() \\r
{ \\r
- extern volatile unsigned portLONG ulCriticalNesting; \\r
+ extern volatile uint32_t ulCriticalNesting; \\r
extern volatile void *volatile pxCurrentTCB; \\r
\\r
/* When we come here */ \\r
*/\r
#define portEXIT_SWITCHING_ISR() \\r
{ \\r
- extern volatile unsigned portLONG ulCriticalNesting; \\r
+ extern volatile uint32_t ulCriticalNesting; \\r
extern volatile void *volatile pxCurrentTCB; \\r
\\r
__asm__ __volatile__ ( \\r