| /Kernel-v11.0.1/portable/ThirdParty/XCC/Xtensa/ |
| D | readme_xtensa.txt | 33 thread-safety on a per task basis (for use in tasks only, not interrupt 41 This port also includes a simple example application that may run on 61 FreeRTOS can run on any Xtensa or Diamond board without this board support 63 and drivers for any on-board devices you want to use. 123 you have a supported emulation board, you can build to run on that. You 124 can also build to run on a raw Xtensa core with no board support, a 126 recommends doing functional development on the simulator because it 134 The makefiles work on Windows and Linux and support incremental builds. 184 The provided examples are designed to run on the Xtensa instruction set 209 FreeRTOS library build makefile automatically, passing on the relevant [all …]
|
| /Kernel-v11.0.1/.github/ |
| D | CONTRIBUTING.md | 20 1. Search on the [FreeRTOS Community Support Forums](https://forums.freertos.org/) and [GitHub issu… 24 When creating a new topic on the forums or filing an issue, please include as many relevant details… 26 * A clear description of the situation - what you observe, what you expect, and your view on how th… 36 1. You are working against the latest source on the *main* branch. 43 … the source; focus on the specific change you are contributing. If you also reformat all the code,… 50 GitHub provides additional document on [forking a repository](https://help.github.com/articles/fork… 58 … time it takes to review will depend on complexity and consideration of wider implications. For mo… 61 ## Finding contributions to work on 62 Looking at the existing issues is a great way to find something to contribute on. As our projects, …
|
| /Kernel-v11.0.1/include/ |
| D | queue.h | 41 /* *INDENT-ON* */ 108 * that will be copied for each posted item. Each item on the queue must be 182 * that will be copied for each posted item. Each item on the queue must be 282 * @param xQueue The handle to the queue on which the item is to be posted. 284 * @param pvItemToQueue A pointer to the item that is to be placed on the 290 * waiting for space to become available on the queue, should it already 365 * @param xQueue The handle to the queue on which the item is to be posted. 367 * @param pvItemToQueue A pointer to the item that is to be placed on the 373 * waiting for space to become available on the queue, should it already 446 * Post an item on a queue. The item is queued by copy, not by reference. [all …]
|
| D | message_buffer.h | 31 * Message buffers build functionality on top of FreeRTOS stream buffers. 40 * are built on top of stream buffers) assumes there is only one task or 56 * the API function). sizeof( size_t ) is typically 4 bytes on a 32-bit 57 * architecture, so writing a 10 byte message to a message buffer on a 32-bit 77 /* *INDENT-ON* */ 107 * store the message's length. sizeof( size_t ) is typically 4 bytes on a 108 * 32-bit architecture, so on most 32-bit architectures a 10 byte message will 180 * the message's length. sizeof( size_t ) is typically 4 bytes on a 32-bit 181 * architecture, so on most 32-bit architecture a 10 byte message will take up 295 * are built on top of stream buffers) assumes there is only one task or [all …]
|
| D | croutine.h | 42 /* *INDENT-ON* */ 340 * See the co-routine section of the WEB documentation for information on 347 * @param pxQueue The handle of the queue on which the data will be posted. 357 * to wait for space to become available on the queue, should space not be 441 * See the co-routine section of the WEB documentation for information on 470 * // blocks on the queue until the number is received. 482 * // Wait for data to become available on the queue. 535 * See the co-routine section of the WEB documentation for information on 539 * @param xQueue The handle to the queue on which the item is to be posted. 541 * @param pvItemToQueue A pointer to the item that is to be placed on the [all …]
|
| D | task.h | 43 /* *INDENT-ON* */ 220 * NOTE: This may alter the stack (depending on the portable implementation) 239 * NOTE: This may alter the stack (depending on the portable implementation) 466 * // an array of StackType_t variables. The size of StackType_t is dependent on 747 * // Now the task can continue its function, but from this point on can only 814 * task remains blocked depends on the tick rate. The constant 946 * as when vTaskDelay() is called, or an event on an object, such as when 953 * know which object a task was blocked on in order to know which actions to 954 * take. For example, if the task was blocked on a queue the interrupt handler 1202 * i.e. calling vTaskSuspend () twice on the same task still only requires one [all …]
|
| D | stream_buffer.h | 37 * are built on top of stream buffers) assumes there is only one task or 63 /* *INDENT-ON* */ 99 * buffer before a task that is blocked on the stream buffer to wait for data is 100 * moved out of the blocked state. For example, if a task is blocked on a read 103 * time expires. As another example, if a task is blocked on a read of an empty 184 * buffer before a task that is blocked on the stream buffer to wait for data is 185 * moved out of the blocked state. For example, if a task is blocked on a read 188 * time expires. As another example, if a task is blocked on a read of an empty 309 * are built on top of stream buffers) assumes there is only one task or 339 * so the absolute time it represents is dependent on the tick frequency. The [all …]
|
| D | atomic.h | 52 /* *INDENT-ON* */ 81 * Inline is compiler specific, and may not always get inlined depending on your 98 * @brief Performs an atomic compare-and-swap operation on the specified values. 165 * @brief Performs an atomic compare-and-swap operation on the specified pointer 309 * @brief Performs an atomic OR operation on the specified values. 336 * @brief Performs an atomic AND operation on the specified values. 363 * @brief Performs an atomic NAND operation on the specified values. 390 * @brief Performs an atomic XOR operation on the specified values. 417 /* *INDENT-ON* */
|
| D | timers.h | 44 /* *INDENT-ON* */ 50 /* IDs for commands that can be sent/received on the timer queue. These are to 496 * When the command is actually processed will depend on the priority of the 540 * When the command is actually processed will depend on the priority of the 593 * command queue. When the command is actually processed will depend on the 661 * When the command is actually processed will depend on the priority of the 714 * When the command is actually processed will depend on the priority of the 722 * // When a key is pressed, an LCD back-light is switched on. If 5 seconds pass 740 * // Ensure the LCD back-light is on, then reset the timer that is 808 * of its time in the Blocked state, waiting for messages to arrive on the timer [all …]
|
| /Kernel-v11.0.1/.github/workflows/ |
| D | ci.yml | 2 on: 10 runs-on: ubuntu-20.04 19 runs-on: ubuntu-latest 30 runs-on: ubuntu-latest 38 runs-on: ubuntu-latest 49 fail-on-incorrect-version: true
|
| D | kernel-demos.yml | 2 on: [push, pull_request] 7 runs-on: windows-latest 36 runs-on: windows-latest 61 runs-on: ubuntu-latest 95 runs-on: ubuntu-latest 123 runs-on: ubuntu-latest 152 runs-on: ubuntu-latest
|
| /Kernel-v11.0.1/ |
| D | History.txt | 49 FreeRTOS handlers for PendSV and SVCall interrupts on Cortex-M devices. 79 alignment requirements on MacOS. We thank @tegimeki for their contribution. 123 + Add a new MPU wrapper that places additional restrictions on unprivileged 132 TCB. Previously the task's context was saved on its stack. 133 3. Execute system calls on a separate privileged only stack: FreeRTOS 219 + Add the ability to use Cortex-R5 port on the parts without FPU. 220 + Fix build warning in heap implementations on PIC24/dsPIC. 222 on QEMU which does not implement PRIO bits. 226 + Fix build issue in POSIX GCC port on Windows Subsystem for Linux (WSL). Contributed 312 when using CM4 MPU ports on a Cortex-M7 r0p0/r0p1 core. [all …]
|
| /Kernel-v11.0.1/portable/ThirdParty/GCC/ATmega/ |
| D | readme.md | 14 Further commits can add support for 16-bit Timers available on many relevant devices. The availabil… 18 …oss the family must be considered, and differences respected. Some comments on the strategy follow. 24 …on of the device) are some 16-bit Timers (very device dependent, eg Timer3 on 1284p), The RTC Time… 26 … hence on these old devices cannot be used as the System Tick. and 2. New style enhanced WDT, whic… 36 …ionally support both 3 byte PC and 3 byte RAM addresses. However, focusing on just the ATmega fami… 47 When a very time critical process is running, based on microsecond timing generated by one of the T…
|
| /Kernel-v11.0.1/portable/GCC/AVR32_UC3/ |
| D | port.c | 68 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 182 * Lock routine called by Newlib on malloc / realloc / free entry to guarantee a 192 * Unlock routine called by Newlib on malloc / realloc / free exit to guarantee 222 * on entry as part of the context switch. */ 409 .bswtrg = TC_EVT_EFFECT_NOOP, /* Software trigger effect on TIOB. */ in prvSetupTimerInterrupt() 410 .beevt = TC_EVT_EFFECT_NOOP, /* External event effect on TIOB. */ in prvSetupTimerInterrupt() 411 .bcpc = TC_EVT_EFFECT_NOOP, /* RC compare effect on TIOB. */ in prvSetupTimerInterrupt() 412 .bcpb = TC_EVT_EFFECT_NOOP, /* RB compare effect on TIOB. */ in prvSetupTimerInterrupt() 414 .aswtrg = TC_EVT_EFFECT_NOOP, /* Software trigger effect on TIOA. */ in prvSetupTimerInterrupt() 415 .aeevt = TC_EVT_EFFECT_NOOP, /* External event effect on TIOA. */ in prvSetupTimerInterrupt() [all …]
|
| /Kernel-v11.0.1/portable/RVDS/ARM_CM7/r0p1/ |
| D | portmacro.h | 37 /* *INDENT-ON* */ 69 /* 32-bit tick type on a 32-bit architecture, so reads of the tick count do 161 /* Task function macros as described on the FreeRTOS.org WEB site. These are 192 /* *INDENT-ON* */ in vPortSetBASEPRI() 211 /* *INDENT-ON* */ in vPortRaiseBASEPRI() 225 /* *INDENT-ON* */ in vPortClearBASEPRIFromISR() 245 /* *INDENT-ON* */ in ulPortRaiseBASEPRI() 262 /* *INDENT-ON* */ in xPortIsInsideInterrupt() 281 /* *INDENT-ON* */
|
| /Kernel-v11.0.1/portable/RVDS/ARM_CM3/ |
| D | portmacro.h | 37 /* *INDENT-ON* */ 69 /* 32-bit tick type on a 32-bit architecture, so reads of the tick count do 161 /* Task function macros as described on the FreeRTOS.org WEB site. These are 192 /* *INDENT-ON* */ in vPortSetBASEPRI() 209 /* *INDENT-ON* */ in vPortRaiseBASEPRI() 223 /* *INDENT-ON* */ in vPortClearBASEPRIFromISR() 241 /* *INDENT-ON* */ in ulPortRaiseBASEPRI() 258 /* *INDENT-ON* */ in xPortIsInsideInterrupt() 278 /* *INDENT-ON* */
|
| /Kernel-v11.0.1/portable/RVDS/ARM_CM4F/ |
| D | portmacro.h | 37 /* *INDENT-ON* */ 69 /* 32-bit tick type on a 32-bit architecture, so reads of the tick count do 161 /* Task function macros as described on the FreeRTOS.org WEB site. These are 192 /* *INDENT-ON* */ in vPortSetBASEPRI() 209 /* *INDENT-ON* */ in vPortRaiseBASEPRI() 223 /* *INDENT-ON* */ in vPortClearBASEPRIFromISR() 241 /* *INDENT-ON* */ in ulPortRaiseBASEPRI() 258 /* *INDENT-ON* */ in xPortIsInsideInterrupt() 277 /* *INDENT-ON* */
|
| /Kernel-v11.0.1/portable/BCC/16BitDOS/PC/ |
| D | port.c | 69 /* The ISR used depends on whether the preemptive or cooperative 96 /* Points to the original routine installed on the vector we use for manual context switches. This… 99 /* Points to the original routine installed on the vector we use to chain to the DOS tick. This is… 114 /* Remember what was on the interrupts we are going to use in xPortStartScheduler() 122 /* Put our manual switch (yield) function on a known in xPortStartScheduler() 126 /* Put the old tick on a different interrupt number so we can in xPortStartScheduler() 130 /* The ISR used depends on whether the preemptive or cooperative in xPortStartScheduler() 134 /* Put our tick switch function on the timer interrupt. */ in xPortStartScheduler() 167 /* The ISR used depends on whether the preemptive or cooperative
|
| /Kernel-v11.0.1/portable/WizC/PIC18/ |
| D | port.c | 35 an error on devices with more than 64kB ROM. 68 * sfr's within parenthesis only on devices > 64kB 71 * 2 bytes per entry on devices <= 64kB 72 * 3 bytes per entry on devices > 64kB 76 * 1 byte : Number of entries on call/return stack 78 * 16 bytes: Free space on stack 123 * Place a few bytes of known values on the bottom of the stack. in pxPortInitialiseStack() 175 * The order is TOSU/TOSH/TOSL. For devices > 64kB, TOSU is put on the in pxPortInitialiseStack() 186 * Store the number of return addresses on the hardware stack. in pxPortInitialiseStack()
|
| D | portmacro.h | 38 #error "WizC supports FreeRTOS on the Microchip PIC18-series only" 155 * The minimal stacksize is calculated on the first reference of 177 * are only saved/restored on devices with more than 64kB (32k Words) ROM. 248 ; is the number of addresses on the stack) in the \ 251 ; After the loop the W-register is stored on the \ 269 ; task is stored on the stack. When \ 316 ; return addresses is the next item on the task stack. \ 318 ; and store them on the hardwarestack. \ 374 ; The return from portRESTORE_CONTEXT() depends on \
|
| /Kernel-v11.0.1/portable/ThirdParty/GCC/RP2040/ |
| D | README.md | 6 * Running the FreeRTOS-Kernel and tasks on either core 0 or core 1, or both. 7 …maphores, queues from pico_sync) between FreeRTOS tasks and code executing on a non FreeRTOS core,… 9 Note that whilst this SMP version can be run on just a single (either) core, it is probably 22 … your environment or via `-DFREERTOS_KERNEL_PATH=/path/to/FreeRTOS-Kernel` on the CMake command li…
|
| /Kernel-v11.0.1/portable/IAR/AVR32_UC3/ |
| D | port.c | 68 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 189 * on entry as part of the context switch. */ 382 .bswtrg = TC_EVT_EFFECT_NOOP, /* Software trigger effect on TIOB. */ in prvSetupTimerInterrupt() 383 .beevt = TC_EVT_EFFECT_NOOP, /* External event effect on TIOB. */ in prvSetupTimerInterrupt() 384 .bcpc = TC_EVT_EFFECT_NOOP, /* RC compare effect on TIOB. */ in prvSetupTimerInterrupt() 385 .bcpb = TC_EVT_EFFECT_NOOP, /* RB compare effect on TIOB. */ in prvSetupTimerInterrupt() 387 .aswtrg = TC_EVT_EFFECT_NOOP, /* Software trigger effect on TIOA. */ in prvSetupTimerInterrupt() 388 .aeevt = TC_EVT_EFFECT_NOOP, /* External event effect on TIOA. */ in prvSetupTimerInterrupt() 389 .acpc = TC_EVT_EFFECT_NOOP, /* RC compare effect on TIOA: toggle. */ in prvSetupTimerInterrupt() 390 ….acpa = TC_EVT_EFFECT_NOOP, /* RA compare effect on TIOA: toggle (other possibi… in prvSetupTimerInterrupt() [all …]
|
| /Kernel-v11.0.1/portable/ThirdParty/GCC/Xtensa_ESP32/include/ |
| D | xt_asm_utils.h | 9 /* File adapted to use on IDF FreeRTOS component, extracted 21 * A0-A15) to their ABI-defined spill regions on the stack. 24 * EXCM and WOE bit be enabled in PS, and relies on repeated hardware 46 * file on an LX6 core (ESP-32) I'm measuring 145 cycles to spill
|
| /Kernel-v11.0.1/portable/oWatcom/16BitDOS/PC/ |
| D | port.c | 82 /* The tick ISR used depends on whether the preemptive or cooperative scheduler 108 /* Points to the original routine installed on the vector we use for manual context switches. This… 111 /* Points to the original routine installed on the vector we use to chain to the DOS tick. This is… 126 /* Remember what was on the interrupts we are going to use in xPortStartScheduler() 134 /* Put our manual switch (yield) function on a known in xPortStartScheduler() 138 /* Put the old tick on a different interrupt number so we can in xPortStartScheduler() 144 /* Put our tick switch function on the timer interrupt. */ in xPortStartScheduler() 177 /* The tick ISR used depends on whether the preemptive or cooperative scheduler
|
| /Kernel-v11.0.1/portable/BCC/16BitDOS/Flsh186/ |
| D | port.c | 71 /* The ISR used depends on whether the preemptive or cooperative scheduler 91 /* Points to the original routine installed on the vector we use for manual 106 /* Remember what was on the interrupts we are going to use in xPortStartScheduler() 110 /* Put our manual switch (yield) function on a known in xPortStartScheduler() 116 /* Put our tick switch function on the timer interrupt. */ in xPortStartScheduler() 146 /* The ISR used depends on whether the preemptive or cooperative scheduler 205 on this timer so there is no old ISR to restore. */ in prvExitFunction()
|