diff --git a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.cproject b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.cproject
index 7aefb8212..f1fe74e9f 100644
--- a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.cproject
+++ b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.cproject
@@ -57,6 +57,7 @@
+
@@ -105,9 +106,6 @@
-
-
-
diff --git a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.project b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.project
index 7a0005113..1be489f74 100644
--- a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.project
+++ b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.project
@@ -34,6 +34,16 @@
2
virtual:/virtual
+
+ Common_Demo_Source/QueueOverwrite.c
+ 1
+ FREERTOS_BASE/Demo/Common/Minimal/QueueOverwrite.c
+
+
+ Common_Demo_Source/QueueSet.c
+ 1
+ FREERTOS_BASE/Demo/Common/Minimal/QueueSet.c
+
Common_Demo_Source/blocktim.c
1
@@ -95,6 +105,17 @@
FREERTOS_BASE/Source/timers.c
+
+
+ 1378064141906
+
+ 26
+
+ org.eclipse.ui.ide.multiFilter
+ 1.0-projectRelativePath-matches-true-false-.csdata/ci
+
+
+
FREERTOS_BASE
diff --git a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/Atollic_Specific/RegTest.c b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/Atollic_Specific/RegTest.c
index 472cba864..f0bbd2bdb 100644
--- a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/Atollic_Specific/RegTest.c
+++ b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/Atollic_Specific/RegTest.c
@@ -131,6 +131,13 @@ void vRegTest1Task( void )
" ldr r1, [r0] \n"
" add r1, r1, #1 \n"
" str r1, [r0] \n"
+ " \n"
+ " /* Yield to increase test coverage. */ \n"
+ " movs r0, #0x01 \n"
+ " ldr r1, =0xe000ed04 \n" /*NVIC_INT_CTRL */
+ " lsl r0, #28 \n" /* Shift to PendSV bit */
+ " str r0, [r1] \n"
+ " dsb \n"
" pop { r1 } \n"
" \n"
" /* Start again. */ \n"
diff --git a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/FreeRTOSConfig.h b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/FreeRTOSConfig.h
index 7bcce204c..3fec1ee00 100644
--- a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/FreeRTOSConfig.h
+++ b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/FreeRTOSConfig.h
@@ -86,12 +86,12 @@
#define configUSE_PREEMPTION 1
#define configUSE_IDLE_HOOK 0
-#define configUSE_TICK_HOOK 0
+#define configUSE_TICK_HOOK 1
#define configCPU_CLOCK_HZ ( SystemCoreClock )
#define configTICK_RATE_HZ ( ( portTickType ) 1000 )
#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 5 )
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 60 )
-#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 6000 ) )
+#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 12000 ) )
#define configMAX_TASK_NAME_LEN ( 5 )
#define configUSE_TRACE_FACILITY 1
#define configUSE_16_BIT_TICKS 0
@@ -104,6 +104,7 @@
#define configUSE_APPLICATION_TASK_TAG 0
#define configUSE_COUNTING_SEMAPHORES 1
#define configGENERATE_RUN_TIME_STATS 0
+#define configUSE_QUEUE_SETS 1
/* Co-routine definitions. */
#define configUSE_CO_ROUTINES 0
@@ -124,6 +125,7 @@ to exclude the API function. */
#define INCLUDE_vTaskSuspend 1
#define INCLUDE_vTaskDelayUntil 1
#define INCLUDE_vTaskDelay 1
+#define INCLUDE_eTaskGetState 1
/* Normal assert() semantics without relying on the provision of an assert.h
header file. */
diff --git a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/IAR_Specific/RegTest_IAR.s b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/IAR_Specific/RegTest_IAR.s
index 8e65a5cda..b22027bc4 100644
--- a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/IAR_Specific/RegTest_IAR.s
+++ b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/IAR_Specific/RegTest_IAR.s
@@ -136,6 +136,13 @@ reg1_loop
ldr r1, [r0]
adds r1, r1, #1
str r1, [r0]
+
+ /* Yield to increase test coverage. */
+ movs r0, #0x01
+ ldr r1, =0xe000ed04 /* NVIC_INT_CTRL */
+ lsls r0 ,r0, #28 /* Shift to PendSV bit */
+ str r0, [r1]
+ dsb
pop { r1 }
/* Start again. */
diff --git a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/Keil_Specific/RegTest_Keil.s b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/Keil_Specific/RegTest_Keil.s
index c7158f533..a51261c15 100644
--- a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/Keil_Specific/RegTest_Keil.s
+++ b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/Keil_Specific/RegTest_Keil.s
@@ -64,16 +64,14 @@
PRESERVE8
THUMB
-
+
IMPORT ulRegTest1LoopCounter
IMPORT ulRegTest2LoopCounter
- EXTERN vPortYield ;////////////////////////////////////////////////////////////////////////////////////////
-
EXPORT vRegTest1Task
EXPORT vRegTest2Task
-
+
AREA |.text|, CODE, READONLY
;/*-----------------------------------------------------------*/
@@ -140,15 +138,18 @@ reg1_loop
ldr r1, [r0]
adds r1, r1, #1
str r1, [r0]
+
+ ;/* Yield to increase test coverage. */
+ movs r0, #0x01
+ ldr r1, =0xe000ed04 ; NVIC_INT_CTRL
+ lsls r0 ,r0, #28 ; Shift to PendSV bit
+ str r0, [r1]
+ dsb
pop { r1 }
;/* Start again. */
movs r0, #100
-
- push {r0-r1}
- bl vPortYield ;;///////////////////////////////////////////////////////////////////////////////////////////////////
- pop {r0-r1}
-
+
b reg1_loop
reg1_error_loop
diff --git a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/RTOSDemo.ewd b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/RTOSDemo.ewd
index d1f08e34e..08ef6953c 100644
--- a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/RTOSDemo.ewd
+++ b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/RTOSDemo.ewd
@@ -1251,7 +1251,7 @@
$TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin
- 0
+ 1
$TOOLKIT_DIR$\plugins\rtos\PowerPac\PowerPacRTOS.ewplugin
diff --git a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/RTOSDemo.ewp b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/RTOSDemo.ewp
index 29cfce81e..29c8eab0a 100644
--- a/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/RTOSDemo.ewp
+++ b/FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/RTOSDemo.ewp
@@ -229,7 +229,7 @@