Remove coroutines (#874)

* Remove co-routine centric CORTEX_LM3S102_Rowley demos.

Remove CORTEX_LM3S102_Rowley Demo2 and Demo3.
Update Demo1 to no longer use coroutines.

* Remove co-routines from MB91460_Softune demo

* FreeRTOS_96348hs_SK16FX100PMC: Remove co-routine usage.

Remove co-routine usage from FreeRTOS_96348hs_SK16FX100PMC demo.

* MB96350_Softune_Dice_Kit: Remove co-routine usage

Remove co-routines usage from MB96350_Softune_Dice_Kit demo

* AVR_Dx_IAR: Remove co-routine usage

* AVR_Dx_Atmel_Studio: Remove co-routine usage

* PIC24_MPLAB: Remove autogenerated files and add to .gitignore

* PIC24_MPLAB: Remove co-routine usage from demo

* AVR_ATMega323_IAR: Remove co-routine usage

* ColdFire_MCF52221_CodeWarrior: Remove coroutine usage

* AVR_ATMega4809_MPLAB.X: Remove co-routine usage

* AVR_ATMega4809_IAR: Remove co-routine usage

* AVR_ATMega4809_Atmel_Studio: Remove coroutine usage

* AVR_ATMega323_WinAVR: Remove coroutine usage

* AVR_Dx_MPLAB.X: Remove coroutine usage

* dsPIC_MPLAB: Remove coroutine usage

* CORTEX_LM3S102_GCC: Remove coroutines and coroutine centric demos

* CORTEX_LM3S102_GCC: Update makefile to discard unused symbols

Allows fitting in the limited ram/flash for this part.

* CORTEX_LM3S316_IAR: Remove coroutines

* Demos: Remove references to crflash.c, crhook.c, crflash.h, crhook.h

* Remove coroutine options from FreeRTOSConfig.h files

* Xilinx: Remove backup file generated by revup utility

* Demos: Remove Coroutine related config items and references

* Format CBMC FreeRTOSConfig.h

* Update URL from aws.amazon.com/freertos to github.com/FreeRTOS

* Fix copyright year and license text

* Fix license text in demo files

* Update header check excluded path list

* Add configBENCHMARK to lexicon
This commit is contained in:
Paul Bartell 2022-11-21 20:59:53 -08:00 committed by GitHub
parent eb7fd55a49
commit 569c78fd8c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
1153 changed files with 4875 additions and 12450 deletions

View file

@ -20,12 +20,12 @@
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* https://www.FreeRTOS.org
* https://aws.amazon.com/freertos
* https://github.com/FreeRTOS
*
*/
/*
/*
* Defines the 'dice' tasks as described at the top of main.c
*/
@ -67,7 +67,7 @@ extern volatile unsigned char *pucDisplayOutput[ 2 ];
/*-----------------------------------------------------------*/
/*
/*
* Defines the 'dice' tasks as described at the top of main.c
*/
void vDiceTask( void *pvParameters )
@ -83,12 +83,12 @@ extern void vSuspendFlashTasks( unsigned char ucIndex, short sSuspendTasks );
the left side or right side display. The constant is used as an index
into the arrays defined at file scope within this file. */
ucIndex = ( unsigned char ) pvParameters;
/* A binary semaphore is used to signal button push events. Create the
semaphore before it is used. */
vSemaphoreCreateBinary( xSemaphores[ ucIndex ] );
/* Make sure the semaphore starts in the wanted state - no button pushes
/* Make sure the semaphore starts in the wanted state - no button pushes
pending. This call will just clear any button pushes that are latched.
Passing in 0 as the block time means the call will not wait for any further
button pushes but instead return immediately. */
@ -101,18 +101,18 @@ extern void vSuspendFlashTasks( unsigned char ucIndex, short sSuspendTasks );
/* Start the task proper. A loop will be performed each time a button is
pushed. The task will remain in the blocked state (sleeping) until a
pushed. The task will remain in the blocked state (sleeping) until a
button is pushed. */
for( ;; )
{
/* Wait for a button push. This task will enter the Blocked state
(will not run again) until after a button has been pushed. */
prvButtonHit( ucIndex, portMAX_DELAY );
/* The next line will only execute after a button has been pushed -
initialise the variable used to control the time the dice is shaken
for. */
ulDiceRunTime = diceSHAKE_TIME;
ulDiceRunTime = diceSHAKE_TIME;
/* Suspend the flash tasks so this task has exclusive access to the
display. */
@ -141,7 +141,7 @@ extern void vSuspendFlashTasks( unsigned char ucIndex, short sSuspendTasks );
/* Clear any button pushes that are pending because a button bounced, or
was pressed while the dice were shaking. Again a block time of zero is
was pressed while the dice were shaking. Again a block time of zero is
used so the function does not wait for any pushes but instead returns
immediately. */
prvButtonHit( ucIndex, 0 );
@ -151,11 +151,11 @@ extern void vSuspendFlashTasks( unsigned char ucIndex, short sSuspendTasks );
a button push. If a button is pressed xQueuePeek() will return but the
button push will remain pending to be read again at the top of this for
loop. It is safe to uses a queue function on a semaphore handle as
semaphores are implemented as macros that uses queues, so the two are
semaphores are implemented as macros that uses queues, so the two are
basically the same thing. */
xQueuePeek( xSemaphores[ ucIndex ], NULL, diceDELAY_WHILE_DISPLAYING_RESULT );
/* Clear the display then resume the tasks or co-routines that were using
/* Clear the display then resume the tasks that were using
the segments of the display. */
*pucDisplayOutput[ ucIndex ] = 0xff;
vSuspendFlashTasks( ucIndex, pdFALSE );