]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Demo/Common/Minimal/GenQTest.c
Update some standard demo task implementations so they can be used with the cooperati...
[freertos] / FreeRTOS / Demo / Common / Minimal / GenQTest.c
index c74188334f0276ff73cef9c2cc0722e5294162c9..ece93763637c5b65a80ba0ea0773f1b37a48f3e6 100644 (file)
@@ -1,5 +1,5 @@
 /*\r
-    FreeRTOS V7.5.3 - Copyright (C) 2013 Real Time Engineers Ltd. \r
+    FreeRTOS V7.5.3 - Copyright (C) 2013 Real Time Engineers Ltd.\r
     All rights reserved\r
 \r
     VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.\r
 */\r
 \r
 \r
-/* \r
- * Tests the extra queue functionality introduced in FreeRTOS.org V4.5.0 - \r
- * including xQueueSendToFront(), xQueueSendToBack(), xQueuePeek() and \r
- * mutex behaviour. \r
+/*\r
+ * Tests the extra queue functionality introduced in FreeRTOS.org V4.5.0 -\r
+ * including xQueueSendToFront(), xQueueSendToBack(), xQueuePeek() and\r
+ * mutex behaviour.\r
  *\r
- * See the comments above the prvSendFrontAndBackTest() and \r
+ * See the comments above the prvSendFrontAndBackTest() and\r
  * prvLowPriorityMutexTask() prototypes below for more information.\r
  */\r
 \r
@@ -151,10 +151,10 @@ xSemaphoreHandle xMutex;
        xQueue = xQueueCreate( genqQUEUE_LENGTH, sizeof( unsigned portLONG ) );\r
 \r
        /* vQueueAddToRegistry() adds the queue to the queue registry, if one is\r
-       in use.  The queue registry is provided as a means for kernel aware \r
+       in use.  The queue registry is provided as a means for kernel aware\r
        debuggers to locate queues and has no purpose if a kernel aware debugger\r
        is not being used.  The call to vQueueAddToRegistry() will be removed\r
-       by the pre-processor if configQUEUE_REGISTRY_SIZE is not defined or is \r
+       by the pre-processor if configQUEUE_REGISTRY_SIZE is not defined or is\r
        defined to be less than 1. */\r
        vQueueAddToRegistry( xQueue, ( signed portCHAR * ) "Gen_Queue_Test" );\r
 \r
@@ -167,10 +167,10 @@ xSemaphoreHandle xMutex;
        xMutex = xSemaphoreCreateMutex();\r
 \r
        /* vQueueAddToRegistry() adds the mutex to the registry, if one is\r
-       in use.  The registry is provided as a means for kernel aware \r
+       in use.  The registry is provided as a means for kernel aware\r
        debuggers to locate mutexes and has no purpose if a kernel aware debugger\r
        is not being used.  The call to vQueueAddToRegistry() will be removed\r
-       by the pre-processor if configQUEUE_REGISTRY_SIZE is not defined or is \r
+       by the pre-processor if configQUEUE_REGISTRY_SIZE is not defined or is\r
        defined to be less than 1. */\r
        vQueueAddToRegistry( ( xQueueHandle ) xMutex, ( signed portCHAR * ) "Gen_Queue_Mutex" );\r
 \r
@@ -190,7 +190,7 @@ xQueueHandle xQueue;
 \r
        #ifdef USE_STDIO\r
        void vPrintDisplayMessage( const portCHAR * const * ppcMessageToSend );\r
-       \r
+\r
                const portCHAR * const pcTaskStartMsg = "Queue SendToFront/SendToBack/Peek test started.\r\n";\r
 \r
                /* Queue a message for printing to say the task has started. */\r
@@ -312,7 +312,7 @@ xQueueHandle xQueue;
                        {\r
                                xErrorDetected = pdTRUE;\r
                        }\r
-                       \r
+\r
 \r
                        /* Now try receiving the data for real.  The value should be the\r
                        same.  Clobber the value first so we know we really received it. */\r
@@ -417,7 +417,7 @@ xSemaphoreHandle xMutex = ( xSemaphoreHandle ) pvParameters;
 \r
        #ifdef USE_STDIO\r
        void vPrintDisplayMessage( const portCHAR * const * ppcMessageToSend );\r
-       \r
+\r
                const portCHAR * const pcTaskStartMsg = "Mutex with priority inheritance test started.\r\n";\r
 \r
                /* Queue a message for printing to say the task has started. */\r
@@ -446,6 +446,10 @@ xSemaphoreHandle xMutex = ( xSemaphoreHandle ) pvParameters;
                mutex, and block when it finds it cannot obtain it. */\r
                vTaskResume( xHighPriorityMutexTask );\r
 \r
+               #if configUSE_PREEMPTION == 0\r
+                       taskYIELD();\r
+               #endif\r
+\r
                /* Ensure the task is reporting it priority as blocked and not\r
                suspended (as it would have done in versions up to V7.5.3). */\r
                #if( INCLUDE_eTaskGetState == 1 )\r
@@ -490,6 +494,10 @@ xSemaphoreHandle xMutex = ( xSemaphoreHandle ) pvParameters;
                        xErrorDetected = pdTRUE;\r
                }\r
 \r
+               #if configUSE_PREEMPTION == 0\r
+                       taskYIELD();\r
+               #endif\r
+\r
                /* Check that the guarded variable did indeed increment... */\r
                if( ulGuardedVariable != 1 )\r
                {\r
@@ -512,7 +520,7 @@ xSemaphoreHandle xMutex = ( xSemaphoreHandle ) pvParameters;
 \r
                #if configUSE_PREEMPTION == 0\r
                        taskYIELD();\r
-               #endif          \r
+               #endif\r
        }\r
 }\r
 /*-----------------------------------------------------------*/\r
@@ -558,7 +566,7 @@ xSemaphoreHandle xMutex = ( xSemaphoreHandle ) pvParameters;
                if( xSemaphoreGive( xMutex ) != pdPASS )\r
                {\r
                        xErrorDetected = pdTRUE;\r
-               }               \r
+               }\r
        }\r
 }\r
 /*-----------------------------------------------------------*/\r
@@ -581,7 +589,7 @@ static unsigned portLONG ulLastLoopCounter = 0, ulLastLoopCounter2 = 0;
        }\r
 \r
        ulLastLoopCounter = ulLoopCounter;\r
-       ulLastLoopCounter2 = ulLoopCounter2;    \r
+       ulLastLoopCounter2 = ulLoopCounter2;\r
 \r
        /* Errors detected in the task itself will have latched xErrorDetected\r
        to true. */\r