]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_GCC_Dave/FreeRTOSConfig.h
Finalise XMC4000 GCC demos.
[freertos] / FreeRTOS / Demo / CORTEX_M4F_Infineon_XMC4000_GCC_Dave / FreeRTOSConfig.h
index 9edf3c3f63da818d5b692be9c9c99bd3bd4617ff..c44fa5b600371ea5e2efb00b7b7f9464ffe1348b 100644 (file)
  * See http://www.freertos.org/a00110.html.\r
  *----------------------------------------------------------*/\r
 \r
-/*\r
- * The following #error directive is to remind users that a batch file must be\r
- * executed prior to this project being built.  Once it has been executed\r
- * remove the #error line below.\r
- */\r
-#error Ensure CreateProjectDirectoryStructure.bat has been executed before building.  See comment immediately above.\r
-\r
-\r
 #include <stdint.h>\r
 extern uint32_t SystemCoreClock;\r
 \r
+/* The following definition allows the startup files that ship with the IDE\r
+to be used without modification when the chip used includes the PMU CM001\r
+errata. */\r
+#define WORKAROUND_PMU_CM001                                   1\r
+\r
 #define configUSE_PREEMPTION                                   1\r
 #define configUSE_PORT_OPTIMISED_TASK_SELECTION        1\r
 #define configUSE_IDLE_HOOK                                            0\r
@@ -156,18 +153,21 @@ to all Cortex-M ports, and do not rely on any particular library functions. */
 /* !!!! configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to zero !!!!\r
 See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */\r
 #define configMAX_SYSCALL_INTERRUPT_PRIORITY   ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )\r
-       \r
+\r
 /* Normal assert() semantics without relying on the provision of an assert.h\r
 header file. */\r
-#define configASSERT( x ) if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }    \r
-       \r
+#define configASSERT( x ) if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }\r
+\r
 /* Definitions that map the FreeRTOS port interrupt handlers to their CMSIS\r
 standard names. */\r
+#if WORKAROUND_PMU_CM001 == 1\r
+       #define xPortPendSVHandler PendSV_Handler_Veneer\r
+#else\r
+       #define xPortPendSVHandler PendSV_Handler\r
+#endif\r
 #define vPortSVCHandler SVC_Handler\r
-#define xPortPendSVHandler PendSV_Handler\r
 #define xPortSysTickHandler SysTick_Handler\r
 \r
-\r
 /* Demo application specific settings. */\r
 #if UC_ID == 4502\r
        /* Hardware includes. */\r