Compiling this demo with picolibc 1.8.9 (as packaged with Debian trixie)
results in a stack overflow. Increasing the minimal stack size from
80 to 88 bytes resolves this. (Debian trixie arm crosscompiler defaults
to compile/link against picolibc and not newlib anymore.)
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
* * Added TraceRecorder also in IAR project for demo CORTEX_MPS2_QEMU_IAR_GCC.
* * Added TraceRecorder also in IAR project for demo CORTEX_MPS2_QEMU_IAR_GCC.
This commit updates the xTaskGetIdleTaskHandle unit test as per the idle
task naming logic.
Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
Cadence/Xtensa: Move Tensilica demos to Partner-Supported-Demos submodule
Add a README to this deprecated demos directory indicating where to
find the latest Tensilica test code.
Signed-off-by: Ian Thompson <ianst@cadence.com>
* Cortex M3 MPS2: fix alignment warning from assembler
Fix assembler alignment warnings for Cortex M3 MPS2:
Warning: section does not have enough alignment to ensure safe PC-relative loads
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
SoftConsole failed to execute MI command to load the RTOSDebug.elf built in this project. Since the debugger couldn't find address `0xe000ed00` defined in ARM processor.
We need to set `$target_riscv` to 1 so that the gdb can be initialized correctly.
On Ubuntu 24.04 ARM64, PTHREAD_STACK_MIN is 0x20000 which does not fit
in unsigned short, size of which is 2 bytes. Casting PTHREAD_STACK_MIN
to unsigned short in FreeRTOSConfig.h results in
configMINIMAL_STACK_SIZE getting defined to 0 which leads to SIGSEV.
This change removes the not needed casting of PTHREAD_STACK_MIN to
unsigned short.
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
From CORTEX_MPU_M3_MPS2_QEMU_GCC remove unused configNUM_TX_DESCRIPTORS
define and remove HEAP3 from as heap_4.c is used.
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
Posix_GCC: update compiler options
1. Add to CFLAGS
- add -O0 optimization for debug builds.
- add -O3 optimization for release builds.
2. Update signal handler `handle_sigint()` to use
`_exit()` instead of `exit()`. Normal exit() is not allowed
within a signal handler.
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
For Demo/CORTEX_MPS2_QEMU_IAR_GCC gcc Makefile:
- simplify IMAGE var to already include full path
- clean target also removes mapfile
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
In FreeRTOS/Demo/CORTEX_MPU_M3_MPS2_QEMU_GCC/syscall.c the
extern definition of g_ulBase ist not used, so remove it.
Also move _heap_bottom and _heap_top to where they are used
in syscall.c.
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Optimize _sbrk() from runtime to compiletime initialization.
Fix compiler warnings by adjusting (void *) and (char *) types.
Complete function declarations for uart_init() and _getpid().
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
Demo/Posix_GCC cleanup
- Guard prvSaveTraceFile() function definition.
- Remove "cid" as it is unused.
- handle_sigint(): quiet compiler warning about unused param.
- main_full.c: prvCheckTask(): Remove unused var "xHeapStats".
Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
* Exclude unnecessary directories from build.
1. "FreeRTOS/Source/example"
2. "FreeRTOS+Trace Recorder/extras"
3. "FreeRTOS+Trace Recorder/kernelports/BareMetal"
4. "FreeRTOS+Trace Recorder/kernelports/ESP-IDF_FreeRTOS"
5. "FreeRTOS+Trace Recorder/kernelports/ThreadX"
6. "FreeRTOS+Trace Recorder/kernelports/Zephyr"
1 is applied to both of "Debug" configuration and "Debug_CodeCoverage" configuration.
Others are applied to only "Debug" configuration because those directories are already excluded from build on "Debug_Coverage" configuration.
* Include path setting is modified.
1.Directory name is modified.("Include" -> "include")
2.New path is added.(FreeRTOS+Trace Recorder/kernelports/FreeRTOS/include)
These modifications are needed to build "Debug" configuration. They are not needed for "Debug_CodeCoverage" configuration because these paths are not used. But these modifications are applied to both of "Debug" configuration and "Debug_CodeCoverage" configuration because of future potential risk.
* [WIN32-MingW Demo] Replace "Exclude from Build" by "Resource Filter".
"Resource Filter" is better than "Exclude from Build" because "Resource Filter" makes excluded directories invisible on Eclipse GUI. But some directories are still "Exclude from Build" because they should be excluded only on "Debug_CodeCoverage" configuration. "Resource Filter" cannot be specified to each configuration separately.
* Code review suggestions
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
---------
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
* [RISC-V-Qemu-virt_GCC Demo] Add picolibc support
Add minimal picolibc support:
* Use --specs=picolibc.specs to direct gcc at picolibc
* Use -DPICOLIBC_INTEGER_PRINTF_SCANF to enable smaller printf implementation
* Enable configUSE_PICOLIBC_TLS for thread local storage
* Add TLS section to linker script
Signed-off-by: Keith Packard <keithpac@amazon.com>
* [CORTEX_MPU_M3_MPS2_QEMU_GCC Demo] Add picolibc support
Add minimal picolibc support to this demo
* Use --specs=picolibc.specs to direct gcc at picolibc
* Use -DPICOLIBC_INTEGER_PRINTF_SCANF to enable smaller printf implementation
* Enable configUSE_PICOLIBC_TLS for thread local storage
* Add TLS section to linker script
* Replace newlib syscall hooks with picolibc ones
Signed-off-by: Keith Packard <keithpac@amazon.com>
---------
Signed-off-by: Keith Packard <keithpac@amazon.com>
Co-authored-by: Keith Packard <keithpac@amazon.com>