diff --git a/.github/lexicon.txt b/.github/lexicon.txt index a4c02373eb8..1a7d4852dc2 100644 --- a/.github/lexicon.txt +++ b/.github/lexicon.txt @@ -1,3 +1,4 @@ + GNU nano 5.9 .github/lexicon.txt Modified aa aaaa aarch @@ -317,6 +318,7 @@ coproc coprocessor coprocessors coreid +coroutinehandle covfs cp cpacr @@ -338,15 +340,32 @@ cprivilegedonlyaccessarray cpsid cpsie cpsr +cpsr +cpstored cpstored cpu +cpu cr +cr +crc crc crcb +crcoroutine +crcoroutine +crdelay +crdelay creadonlyarray creadwritearray createevent +crend +crend crgint +croutine +croutine +crqueue +crqueue +crstart +crstart crt crtv crxedchar @@ -1523,11 +1542,17 @@ prvaddcurrenttasktodelayedlist prvcheckinterfaces prvchecktaskswaitingtermination prvcopydatatoqueue +prvcoroutineflashtask +prvcoroutineflashtask +prvcoroutineflashworktask +prvcoroutineflashworktask prvdeletetcb prvexitfunction prvgettimens prvheapinit prvidletask +prvinitialisecoroutinelists +prvinitialisecoroutinelists prvinitialisemutex prvinitialisenewstreambuffer prvinitialisenewtimer @@ -1642,11 +1667,18 @@ pxblocktoinsert pxcallbackfunction pxcode pxcontainer +pxcoroutinecode +pxcoroutinecode +pxcoroutinewoken +pxcoroutinewoken pxcrcb pxcreatedtask +pxcurrentcoroutine +pxcurrentcoroutine pxcurrenttcb pxcurrenttcbconst pxcurrenttimerlist +pxdelayedcoroutinelist pxdelayedtasklist pxend pxendofstack @@ -1681,6 +1713,7 @@ pxnextfreeblock pxnexttcb pxoriginalsp pxoriginaltos +pxoverflowdelayedcoroutinelist pxoverflowdelayedtasklist pxowner pxportinitialisestack @@ -1690,6 +1723,7 @@ pxqueue pxqueuebuffer pxqueuesetcontainer pxramstack +pxreadycoroutinelists pxreadytaskslists pxreceivecompletedcallback pxregions @@ -2463,6 +2497,7 @@ uxtopreadypriority uxtopusedpriority uxvariabletoincrement uxwantedbytes +vacoroutine vadifferenttask vafunction val @@ -2492,6 +2527,7 @@ vbr vbufferisr vcallbackfunction vclearinterruptmask +vcoroutineschedule vddcore vec vectactive @@ -2501,6 +2537,7 @@ ver veventgroupclearbitscallback veventgroupdelete veventgroupsetbitscallback +vflashcoroutine vfp vfunction vic @@ -2563,12 +2600,14 @@ vqueuedelete vqueueunregisterqueue vr vraiseprivilege +vreceivingcoroutine vreg vresetprivilege vrestorecontextoffirsttask vrpm vsemaphorecreatebinary vsemaphoredelete +vsendingcoroutine vsetbacklightstate vsoftwareinterruptentry vstartfirsttask @@ -2702,6 +2741,9 @@ xcommandtime xcommsrxqueue xconsttickcount xcopyposition +xcoroutinecreate +xcoroutinepreviouslywoken +xcoroutinequeue xcount xcreatedeventgroup xcrwokenbypost @@ -2711,6 +2753,7 @@ xdd xdddd xdeadbeef xdelay +xdelayedcoroutinelist xdelayedtasklist xdelaytime xe @@ -2859,6 +2902,7 @@ xpar xparameters xpendedcounts xpendedticks +xpendingreadycoroutinelist xpendingreadylist xperiod xportgetcoreid @@ -3100,4 +3144,3 @@ xwritevalue xxr xyieldpending xzr - diff --git a/CMakeLists.txt b/CMakeLists.txt index d45de64b1b5..46a9e180796 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -267,6 +267,7 @@ add_compile_options( add_subdirectory(portable) add_library(freertos_kernel STATIC + croutine.c event_groups.c list.c queue.c diff --git a/README.md b/README.md index 952914daf46..dd79eee6ce7 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,8 @@ git clone git@github.com:FreeRTOS/FreeRTOS-Kernel.git ## Repository structure - The root of this repository contains the three files that are common to every port - list.c, queue.c and tasks.c. The kernel is contained within these -three files. +three files. croutine.c implements the optional co-routine functionality - which +is normally only used on very memory limited systems. - The ```./portable``` directory contains the files that are specific to a particular microcontroller and/or compiler. See the readme file in the ```./portable``` directory for more information.