mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-12-09 21:25:15 -05:00
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:
parent
eb7fd55a49
commit
569c78fd8c
1153 changed files with 4875 additions and 12450 deletions
|
|
@ -19,8 +19,8 @@
|
|||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* https://www.FreeRTOS.org
|
||||
* https://github.com/FreeRTOS
|
||||
* https://www.FreeRTOS.org
|
||||
* https://github.com/FreeRTOS
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
@ -65,9 +65,6 @@
|
|||
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 80 )
|
||||
#endif
|
||||
|
||||
/* Co-routine definitions. */
|
||||
#define configUSE_CO_ROUTINES 0
|
||||
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
|
||||
|
||||
/* Set the following definitions to 1 to include the API function, or zero
|
||||
to exclude the API function. */
|
||||
|
|
@ -81,7 +78,7 @@ to exclude the API function. */
|
|||
|
||||
/* This demo makes use of one or more example stats formatting functions. These
|
||||
format the raw data provided by the uxTaskGetSystemState() function in to human
|
||||
readable ASCII form. See the notes in the implementation of vTaskList() within
|
||||
readable ASCII form. See the notes in the implementation of vTaskList() within
|
||||
FreeRTOS/Source/tasks.c for limitations. */
|
||||
#define configUSE_STATS_FORMATTING_FUNCTIONS 1
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
* 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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
@ -56,10 +56,10 @@ void vParTestSetLED( unsigned portBASE_TYPE uxLED, signed portBASE_TYPE xValue )
|
|||
{
|
||||
case 0: LED_PORT_OUT |= LED_1;
|
||||
break;
|
||||
|
||||
|
||||
case 1: LED_PORT_OUT |= LED_2;
|
||||
break;
|
||||
|
||||
|
||||
default: /* Nothing to do here, there are only two LEDs. */
|
||||
break;
|
||||
}
|
||||
|
|
@ -70,7 +70,7 @@ void vParTestSetLED( unsigned portBASE_TYPE uxLED, signed portBASE_TYPE xValue )
|
|||
{
|
||||
case 0: LED_PORT_OUT &= ~LED_1;
|
||||
break;
|
||||
|
||||
|
||||
case 1: LED_PORT_OUT &= ~LED_2;
|
||||
break;
|
||||
default: /* Nothing to do here, there are only two LEDs. */
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
* 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
|
||||
*
|
||||
*/
|
||||
#include "msp430.h"
|
||||
|
|
@ -37,12 +37,12 @@
|
|||
IMPORT usRegTest1Counter
|
||||
IMPORT usRegTest2Counter
|
||||
IMPORT vPortYield
|
||||
|
||||
|
||||
EXPORT vRegTest1Task
|
||||
EXPORT vRegTest2Task
|
||||
|
||||
RSEG CODE
|
||||
|
||||
|
||||
EVEN
|
||||
|
||||
vRegTest1Task:
|
||||
|
|
@ -60,7 +60,7 @@ vRegTest1Task:
|
|||
mov_x #0xdddd, r13
|
||||
mov_x #0xeeee, r14
|
||||
mov_x #0xffff, r15
|
||||
|
||||
|
||||
prvRegTest1Loop:
|
||||
|
||||
/* Test each general purpose register to check that it still contains the
|
||||
|
|
@ -90,22 +90,22 @@ prvRegTest1Loop:
|
|||
jne vRegTest1Error
|
||||
cmp_x #0xffff, r15
|
||||
jne vRegTest1Error
|
||||
|
||||
|
||||
/* This task is still running without jumping to vRegTest1Error, so increment
|
||||
the loop counter so the check task knows the task is running error free. */
|
||||
incx.w &usRegTest1Counter
|
||||
|
||||
|
||||
/* Loop again, performing the same tests. */
|
||||
jmp prvRegTest1Loop
|
||||
nop
|
||||
|
||||
|
||||
|
||||
EVEN
|
||||
|
||||
|
||||
vRegTest1Error:
|
||||
jmp vRegTest1Error
|
||||
nop
|
||||
|
||||
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
/* See the comments in vRegTest1Task. This task is the same, it just uses
|
||||
|
|
@ -124,7 +124,7 @@ vRegTest2Task:
|
|||
mov_x #0xddd1, r13
|
||||
mov_x #0xeee1, r14
|
||||
mov_x #0xfff1, r15
|
||||
|
||||
|
||||
prvRegTest2Loop:
|
||||
|
||||
cmp_x #0x4441, r4
|
||||
|
|
@ -151,20 +151,20 @@ prvRegTest2Loop:
|
|||
jne vRegTest2Error
|
||||
cmp_x #0xfff1, r15
|
||||
jne vRegTest2Error
|
||||
|
||||
|
||||
/* Also perform a manual yield, just to increase the scope of the test. */
|
||||
calla #vPortYield
|
||||
|
||||
|
||||
incx.w &usRegTest2Counter
|
||||
jmp prvRegTest2Loop
|
||||
nop
|
||||
|
||||
|
||||
|
||||
vRegTest2Error:
|
||||
jmp vRegTest2Error
|
||||
nop
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
|
||||
|
||||
END
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
* 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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
* 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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
* 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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
@ -76,7 +76,7 @@ unsigned long ulBaudRateCount;
|
|||
|
||||
/* Use SMCLK. */
|
||||
UCA1CTL1 = UCSSEL0 | UCSSEL1;
|
||||
|
||||
|
||||
/* Setup baud rate low byte. */
|
||||
UCA1BR0 = ( unsigned char ) ( ulBaudRateCount & ( unsigned long ) 0xff );
|
||||
|
||||
|
|
@ -89,12 +89,12 @@ unsigned long ulBaudRateCount;
|
|||
|
||||
/* Enable interrupts. */
|
||||
UCA1IE |= UCRXIE;
|
||||
|
||||
|
||||
/* Take out of reset. */
|
||||
UCA1CTL1 &= ~UCSWRST;
|
||||
}
|
||||
portEXIT_CRITICAL();
|
||||
|
||||
|
||||
/* Note the comments at the top of this file about this not being a generic
|
||||
UART driver. */
|
||||
return NULL;
|
||||
|
|
@ -149,7 +149,7 @@ portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE;
|
|||
cChar = UCA1RXBUF;
|
||||
xQueueSendFromISR( xRxedChars, &cChar, &xHigherPriorityTaskWoken );
|
||||
}
|
||||
|
||||
|
||||
/* If there is a Tx interrupt pending and the tx interrupts are enabled. */
|
||||
if( ( UCA1IFG & UCTXIFG ) != 0 )
|
||||
{
|
||||
|
|
@ -169,14 +169,14 @@ portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE;
|
|||
}
|
||||
|
||||
__bic_SR_register_on_exit( SCG1 + SCG0 + OSCOFF + CPUOFF );
|
||||
|
||||
|
||||
/* If writing to a queue caused a task to unblock, and the unblocked task
|
||||
has a priority equal to or above the task that this interrupt interrupted,
|
||||
then lHigherPriorityTaskWoken will have been set to pdTRUE internally within
|
||||
xQueuesendFromISR(), and portEND_SWITCHING_ISR() will ensure that this
|
||||
interrupt returns directly to the higher priority unblocked task.
|
||||
|
||||
THIS MUST BE THE LAST THING DONE IN THE ISR. */
|
||||
|
||||
THIS MUST BE THE LAST THING DONE IN THE ISR. */
|
||||
portYIELD_FROM_ISR( xHigherPriorityTaskWoken );
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue