Commit graph

1404 commits

Author SHA1 Message Date
Florian La Roche
bcef9d066a
Demo code: add static modifiers (#1373)
Add "static" modifier to demo code to reduce global vars.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2025-09-17 10:57:53 +05:30
Florian La Roche
62195136d1
Demo/Common: fix divide by zero possibility and non-used return values (#1370)
* Demo/Common: fix divide by zero possibility and non-used return values

- In TimerDemo.c fix possible divide by zero in
  "xMaxBlockTimeUsedByTheseTests / xCycleFrequency".
- Move this code in TimerDemo.c into if-clause where it is
  actually used.
- In Minimal/StreamBufferDemo.c and Minimal/TaskNotify.c avoid
  unused return values.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Kody Stribrny <kstribrn@amazon.com>
2025-08-29 11:54:32 -07:00
Kovacsics Robert
e933faf3ee
Fix build of & add CMake to LM3S Qemu Demo (#1368)
* Demo/CORTEX_LM3S6965_GCC_QEMU: Trim trailing spaces & lines

* Demo/CORTEX_LM3S6965_GCC_QEMU: Fix Eclipse build 1/2 (examples)

It was trying to build the examples, which pulled in symbols such as
`_write` that are not implemented.

* Demo/CORTEX_LM3S6965_GCC_QEMU: Fix Eclipse build 1/2 (discard .ARM.exidx)

Somewhere along the line now there is the .ARM.exidx section in the
files, we don't use exceptions so can just discard it.

* Demo/CORTEX_LM3S6965_GCC_QEMU: Add CMake

* Debug/CORTEX_LM3S6965_GCC_QEMU: Fix Qemu startup

It was tripping on port.c

        /* Check that the maximum system call priority is nonzero after
         * accounting for the number of priority bits supported by the
         * hardware. A priority of 0 is invalid because setting the BASEPRI
         * register to 0 unmasks all interrupts, and interrupts with priority 0
         * cannot be masked using BASEPRI.
         * See https://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html */
        configASSERT( ucMaxSysCallPriority );

Inspecting the value ucMaxPriorityValue gave 0xE0, and setting it to
0xE0 complains about overflow in
FreeRTOS/Demo/CORTEX_LM3S6965_GCC_QEMU/LocalDemoFiles/IntQueueTimer.c:57

    /* Shift left 5 as only the top 3 bits are implemented. */
    IntPrioritySet( INT_TIMER2A, configMAX_SYSCALL_INTERRUPT_PRIORITY + ( 1 << 5 ) );

* Add qemu options to run in headless mode

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
2025-08-15 12:48:14 +05:30
Florian La Roche
1aa47857a0
Various Qemu Cortex M3 ports now support picolibc (#1364)
* Various Qemu Cortex M3 ports now support picolibc

Allow various Qemu Cortex M3 ports to compile against
picolibc. Also support "-flto" to work correctly.
Tested with picolibc in current Debian 13.
Just use "PICOLIBC=1 make" to switch over from default newlib.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>

* Add ffreestanding

Signed-off-by: Ubuntu <ubuntu@ip-172-31-15-241.ap-south-1.compute.internal>

* Fix formatting check

Signed-off-by: Ubuntu <ubuntu@ip-172-31-15-241.ap-south-1.compute.internal>

---------

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Signed-off-by: Ubuntu <ubuntu@ip-172-31-15-241.ap-south-1.compute.internal>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
Co-authored-by: Ubuntu <ubuntu@ip-172-31-15-241.ap-south-1.compute.internal>
2025-08-13 20:15:54 +05:30
Florian La Roche
e0aa5eac74
Fix optimization bug and cleanup (#1363)
- Compiling Demo/Common/Minimal/TimerDemo.c with "gcc -flto" breaks the
  tests, so add "volatile" modifier to "ucOneShotTimerCounter" to fix
  this.
- In Demo/FreeRTOS_Plus_TCP_Echo_Qemu_mps2/main_networking.c print the
  network configuration even more visible.
- In MessageBufferDemo.c and Demo/Posix_GCC/main_full.c fix compiler
  warnings from "gcc -Wwrite-strings" by adding a const modifier.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2025-07-08 11:05:01 +05:30
Florian La Roche
722d17b13a
POSIX Demo: clang warnings cleanup (#1359)
Cleanup for clang compiler warnings:
- add "#include" to proper header files
- add "static" modifier to some vars
- if tracing is disabled, do not compile helper functions
- remove unused macro "mainFLASH_TASK_PRIORITY"

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2025-06-19 14:02:36 +05:30
Dan Petrisko
9b5e277a6f
update alignment in RISC-V-spike-htif_GCC (#1357) 2025-06-13 12:42:47 +05:30
Florian La Roche
d1136b4857
Demo/CORTEX_MPS2_QEMU_IAR_GCC: fix warnings (#1352)
* Demo/CORTEX_MPS2_QEMU_IAR_GCC: fix warnings

* fix compiler warning "gcc -Wmissing-prototypes" in startup_gcc.c
* fix compiler warning "gcc -Wredundant-decls" in main.c
* change stack size from 88 to 128
* change heap from 60 to 64 Kbyte

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>

* Increase heap size for tracing on

---------

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com>
2025-06-11 20:41:51 +05:30
Florian La Roche
1fb5ee4dad
Demo/Common/Minimal/StreamBufferInterrupt.c: more strict result checking (#1356)
From looking at the code, I think this more strict error checking
was intended in xIsInterruptStreamBufferDemoStillRunning().
If not, then the else part and var could be completely removed
as dead code.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2025-06-11 12:47:56 +05:30
Florian La Roche
67bc5a930d
Demo/Posix_GCC: fix compiler flags and compiler warnings (#1351)
- Change CMakeLists.txt to set the C compiler flags instead
  of the C++ compiler flags.
- Change to compiler warnings from "gcc -Wconversion" in
  main_full.c.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Tony Josi <tonyjosi@amazon.com>
2025-06-04 11:15:09 +08:00
Florian La Roche
9d9bbd0e61
Demo/CORTEX_MPU_M3_MPS2_QEMU_GCC: support "gcc -flto" and fixes (#1353)
* Fix compiler warning "gcc -Wmissing-prototypes" in startup.c.
* For "gcc -flto" fix duplicate labels in asm (startup.c) and mark
  some functions as "used" in startup.c and syscalls.c.
* Fix "gcc -Wredundant-decls" in main.c.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2025-05-26 15:47:12 +05:30
Florian La Roche
1ca9fd442f
clean up warnings from "gcc -Wconversion" (#1344)
* clean up warnings from "gcc -Wconversion"

clean up warnings from "gcc -Wconversion"

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>

* Fix formatting

---------

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
Co-authored-by: Rahul Kar <karahulx@amazon.com>
2025-04-29 21:24:39 +05:30
Florian La Roche
1325aaaad6
FreeRTOS_Plus_TCP_Echo_Qemu_mps2: cleanup (#1336)
* FreeRTOS_Plus_TCP_Echo_Qemu_mps2: cleanup

FreeRTOS_Plus_TCP_Echo_Qemu_mps2:
- Add missing include for header files.
- Remove redundant function declarations.
- Add "static" modifier if possible.
- No need to use "weak" for EthernetISR().

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2025-04-21 19:13:02 +05:30
Luca Mannella
9165944664
Align stack size to 16-byte boundary by changing __stack_size from 350 to 352​ (#1335)
This commit updates the __stack_size definition in the
linker flags, changing its value from 350 to 352. This
change ensures that the stack size is a multiple of 16,
aligning the stack pointer (sp) to a 16-byte boundary
as required by the system architecture.​
2025-04-08 11:24:31 +05:30
Jonathan Cubides
2625a12c04
Update demo RISCV qemu demo to check the vector context save (#1334)
Demo: RISC-V_RV32_QEMU_VIRT_GCC: Add a test for vector registers
2025-03-31 21:08:39 +05:30
Jonathan Cubides
881305dcb8
Update RV32 qemu Demo to support RVA23 (#1329)
* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Increase the memory for RVA23 compilation

* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Update the regtest to include fpu registers

* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Fix small issues for 64-bit configs

* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Enable FPU unit

* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Enable compilation for RVA23 platforms

* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Fix copyright related CI issues

* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Update submodule manifest

* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Update a few typos and left overs

* Demo: RISC-V_RV32_QEMU_VIRT_GCC: Apply @aggarg's sugestions

* Update pointer to Freertos-Kernel
2025-03-10 17:06:13 +05:30
Florian La Roche
2abeb3e52f
Demo/CORTEX_MPS2_QEMU_IAR_GCC: increase min stack size from 80 to 88 (#1332)
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>
2025-03-07 00:14:29 +05:30
Tony Josi
8eba8b5c9f
Update URI for FreeRTOS Quick start guide and FAQ (#1328) 2025-02-16 11:24:31 +05:30
Johan Kraft
617657c57f
Added TraceRecorder also in IAR project for CORTEX_MPS2_QEMU_IAR_GCC demo (#1325)
* * 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.
2025-02-10 12:32:38 +05:30
Gaurav-Aggarwal-AWS
3d927557dc
Add tests to cover xQueueCreateSetStatic (#1323)
Add tests to cover xQueueCreateSetStatic

This API was recently added in the following PR:
https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/1228

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2025-01-28 20:44:20 +05:30
Johan Kraft
6d364f0b1f
TraceRecorder demo added in CORTEX_MPS2_QEMU_IAR_GCC (#1320)
* * Added TraceRecorder demo for Percepio View in CORTEX_MPS2_QEMU_IAR_GCC (only gcc supported at the moment)

* * Added TraceRecorder demo instructions in readme.md.

* * Updated FreeRTOS-Plus-Trace pointer

* * Using FreeRTOS-Plus-Trace submodule (TraceRecorder) instead of a static TraceRecorder copy.
2025-01-23 10:11:33 +05:30
Gaurav-Aggarwal-AWS
642e2ecfc7
Fix CI failures (#1322)
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2025-01-22 22:30:10 +05:30
chinglee-iot
2dcc47ecba
Update unit test for TASK and ISR lock macros (#1319)
This is needed for PR - https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/1212.
2024-12-30 13:13:03 +05:30
Gaurav-Aggarwal-AWS
66de13ce1b
Update FreeRTOS-Kernel submodule pointer (#1316)
Update FreeRTOS-Kernel submodule pointer

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-12-26 10:57:39 +05:30
Gaurav-Aggarwal-AWS
93ba585fb9
Fix coverage tests for Kernel PR 1203 (#1315)
Fix coverage tests for Kernel PR 1203

PR Link - https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/1203.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-12-20 10:56:23 +05:30
Sudeep Mohanty
f430a10431
fix(freertos/tasks): Updated the xTaskGetIdleTaskHandle Test (#1314)
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>
2024-12-19 22:32:48 +05:30
Gaurav-Aggarwal-AWS
dfb7b28f72
Fix SMP coverage tests for kernel PR 1206 (#1313)
PR Link - https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/1206

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-12-19 11:41:41 +05:30
Gaurav-Aggarwal-AWS
f6672f99df
Fix unit tests for Kernel PR 1206 (#1312)
PR - https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/1206

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-12-17 22:49:00 +05:30
Gaurav-Aggarwal-AWS
6aa244f6fe
Update Community-Supported-Demos submodule pointer (#1303)
* Update Community-Supported-Demos submodule pointer

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-12-02 17:11:05 +05:30
Tony Josi
a3a526569f
Enable release from forks (#1299)
* Enable release from forks

* Update Kernel submodule pointer

* Update manifest file

---------

Co-authored-by: Rahul Kar <karahulx@amazon.com>
2024-11-19 15:19:14 +05:30
Jeff Tenney
1469448e3e
Don't expect call to xTaskResumeAll in some cases (#1295) 2024-11-12 12:31:58 +05:30
Gaurav-Aggarwal-AWS
28a20d5a69
Add volatile qualifier (#1283)
Add volatile qualifier

This is needed to ensure that the memory mapped address it always read.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-10-17 11:08:16 +05:30
Ian Thompson
b3e6cff1f2
Xtensa Demos updated and moved to Partner-Supported submodules (#1281)
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>
2024-10-16 10:06:05 +05:30
Gaurav-Aggarwal-AWS
c502e5f9a5
Update runtime library support to automatic (#1280)
This ensures that CCS builds this library when the project is
first built after CCS installation.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-10-11 10:31:48 +05:30
Matt Ryall [Mawson Rovers]
6dc7737eff
Update CORTEX R4 demo to use linked resources #1272 (#1273)
* Cortex R4 demo: replace setup script with linked resources

* Cortex R4 demo: remove Eclipse user settings
2024-10-10 15:23:25 +05:30
Florian La Roche
d80937d050
Cortex M3 MPS2: modernize assembler syntax and also add .ltorg (#1268)
Cortex M3 MPS2: modernize assembler syntax and also add .ltorg

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2024-09-25 16:09:47 +05:30
Florian La Roche
9245b4aaac
Cortex M3 MPS2: fix alignment warning from assembler (#1266)
* 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>
2024-09-16 12:19:39 +05:30
ericwu13
b0c9468ad6
Update RTOSDemo Debug Renode.launch (#1261)
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.
2024-09-03 11:41:27 +05:30
joejoseph08
3b34f8028d
Add cygwin option for compilation (#1230)
Add Cygwin option for compilation
2024-08-23 15:36:40 +05:30
Gaurav-Aggarwal-AWS
059165fbf1
Fix crash on Ubuntu 24.04 ARM64 (#1253)
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>
2024-08-23 12:47:47 +05:30
Monika Singh
c304913b64
Remove redundant TCP includes in FreeRTOS CBMC proofs (#1254)
* Remove unnecessary TCP includes

* Update comment
2024-08-23 12:18:51 +05:30
chinglee-iot
9febcedd91
Add async core yield test for SMP (#1247)
Add async core yield test for SMP

Add async core yield test for SMP to verify set core affinity
  implementation
2024-08-21 16:02:18 +05:30
chinglee-iot
4b039b82e9
Remove no new core added coverage test for coreAffinitySet (#1248)
* Remove this unit test due to implementation change
2024-08-20 12:23:21 +08:00
chinglee-iot
520fc225eb
Add SMP task delete on target test (#1176)
Add SMP task delete on target test
2024-08-16 14:38:01 +05:30
chinglee-iot
6ed67f54bb
Add SMP one task enter critical on target test (#1180)
Add SMP one task enter critical on target test
2024-08-16 14:23:22 +05:30
chinglee-iot
98c2b04bbc
Add SMP interrupt wait critical secton on target test (#1181)
Add SMP interrupt wait critical secton on target test
2024-08-16 14:06:05 +05:30
Rahul Kar
8582188293
ARMv7-R No_GIC Port Demo (#1236)
Add ARM_CRx_No_GIC_Demo
2024-08-11 19:07:30 +05:30
Gaurav-Aggarwal-AWS
5f52d71cee
Update kernel submodule pointer (#1239)
* Update kernel submodule pointer

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Update manifest

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-08-06 22:12:13 +05:30
Gaurav-Aggarwal-AWS
a57ee50f67
Unit test updates for kernel PR #1111 (#1238)
* Unit test updates for kernel PR #1111

https://github.com/FreeRTOS/FreeRTOS-Kernel/pull/1111

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Fix doxygen check

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2024-08-06 10:10:45 +05:30
Niklas
36b803e358
fix AbortDelay.c Test (#1237)
* fix AbortDelay.c Test

* Uncrustify: triggered by comment.

* Update comment

* Fix formatting

---------

Co-authored-by: Niklas Jenner <niklas.jenner@ifta.com>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Monika Singh <moninom@amazon.com>
2024-07-22 12:15:03 +05:30