1370 Commits

Author SHA1 Message Date
Sudeep Mohanty 1c278df88e test(freertos): harden mutex owner assert reset test 2026-04-10 08:34:35 +02:00
Sudeep Mohanty 6ddbfbdb18 fix(freertos): hide mutex-owner check config 2026-04-09 09:06:14 +02:00
Marius Vikhammer 54c6851bf1 test: align esp32s31 freertos perf limits
ESP32-S31 scheduling and spinlock benchmarks match the relaxed P4 thresholds
better than the generic limits, so use those limits to keep the
FreeRTOS perf cases stable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-08 14:46:25 +08:00
Guillaume Souchere 8706cd6135 feat(esp_system): add linux test for system init function regisration 2026-04-01 11:46:06 +02:00
Omar Chebib 08f33cf590 Merge branch 'feature/esp32s31_pie_coproc_old_commit' into 'master'
feat: add support for PIE coprocessor on the ESP32-S31

Closes IDF-14867 and IDF-14661

See merge request espressif/esp-idf!45851
2026-04-01 15:46:01 +08:00
Marius Vikhammer 5c572e5a60 docs: refresh broken documentation links 2026-04-01 10:17:33 +08:00
Omar Chebib 38abf98216 feat: add support for PIE coprocessor on the ESP32-S31 2026-03-31 13:27:16 +08:00
Sudeep Mohanty f3fe60c36d fix(freertos): Use bare ticks for cleanup delays in freertos tests 2026-03-20 14:47:44 +01:00
Sudeep Mohanty 4ae2f6a6a1 fix(freertos): Fix flaky PSRAM tests for freertos
This commit adds additional delays to the stress test where we create
and self-delete tasks on PSRAM. iSuch tasks rely on the kernel creating
a special cleanup task to delete them. Hence, the delays in the main
task allow the cleanup task to bescheduled and the deletion to go
through.
2026-03-20 09:29:56 +01:00
Konstantin Kondrashov 59901fd3bb Merge branch 'fix/freertos_riscv_px_end_of_stack_alignment' into 'master'
fix(freertos): fix riscv pxEndOfStack offset alignment

Closes IDFGH-17266

See merge request espressif/esp-idf!45969
2026-03-11 09:54:13 +02:00
Marius Vikhammer 5b4c0c91fa Merge branch 'fix/freertos-message-buffer-privileged-function' into 'master'
fix(freertos): remove spurious PRIVILEGED_FUNCTION from macro body

Closes IDFGH-16879

See merge request espressif/esp-idf!46265
2026-03-11 12:41:38 +08:00
Marius Vikhammer eb6f35f6a0 fix(freertos): remove spurious PRIVILEGED_FUNCTION from macro body
The macro expanded with a trailing PRIVILEGED_FUNCTION; token, making it
unusable in expression contexts (e.g. inside assert() or as a function
argument), causing a compile error: "expected ')' before ';' token".

Closes https://github.com/espressif/esp-idf/issues/17948

Made-with: Cursor
2026-03-04 15:23:04 +08:00
Wu Zheng Hui b4def1d7db Merge branch 'feat/support_rv_fp_retention' into 'master'
feat(esp_hw_support): support rv fp retention

See merge request espressif/esp-idf!45565
2026-03-03 17:36:04 +08:00
Konstantin Kondrashov fa9b7843bc fix(freertos): fix riscv pxEndOfStack offset alignment
Closes https://github.com/espressif/esp-idf/issues/18256
2026-02-20 12:42:26 +02:00
Konstantin Kondrashov b40aae66e3 fix(esp32): Fix access to MALLOC_CAP_IRAM_8BIT byte array in loop
The Xtensa load/store handler did not properly handle 8/16-bit
memory access to IRAM regions configured with MALLOC_CAP_IRAM_8BIT
(and CONFIG_ESP32_IRAM_AS_8BIT_ACCESSIBLE_MEMORY=y) from a loop
(LBEG/LEND/LCOUNT) context. This caused the loop to exit after
the first access, instead of continuing to iterate as intended.

Closes https://github.com/espressif/esp-idf/issues/14127
2026-02-13 16:12:58 +02:00
Konstantin Kondrashov ac8fd0f491 fix(esp32): Fix IRAM_AS_8BIT_ACCESSIBLE_MEMORY accessible from ISR1 2026-02-13 11:30:44 +02:00
Frantisek Hrbata 66c0a4d658 Merge branch 'fix/cmakev2_linux_target' into 'master'
fix(cmakev2): linux target fixes

Closes IDFGH-17121

See merge request espressif/esp-idf!45315
2026-02-09 14:09:36 +01:00
Chen Chen eeb24057c4 refactor(hal): graduate systimer hal driver into esp_hal_systimer 2026-02-06 18:08:57 +08:00
wuzhenghui b7edaebed9 feat(esp_hw_support): support esp32p4 & esp32h4 RV FPU context retention in pd_cpu sleep 2026-02-05 15:39:40 +08:00
Alexey Lapshin 526891e08f Merge branch 'feature/refactor_linker_scripts' into 'master'
feat(esp_system): refactor linker scripts to reduce duplicated code

See merge request espressif/esp-idf!45220
2026-02-02 13:09:30 +04:00
Alexey Lapshin f28a2765d8 fix(esp_system): xtensa: refactor linker scripts and reduce binary size for C++ apps 2026-01-30 23:27:32 +07:00
armando 695510b21c fix(freertos): place criticalsection in internal ram on smp 2026-01-28 01:27:37 +00:00
Marius Vikhammer 5f914189c2 ci(core): removed common_components from core test-apps dependencies 2026-01-26 11:47:23 +08:00
Igor Udot f4cb052666 Merge branch 'ci/base_components' into 'master'
ci: use common_components in depends_components

See merge request espressif/esp-idf!45070
2026-01-26 09:08:11 +08:00
igor.udot 4c26ab876b ci: update build-test-rules to use common_components 2026-01-23 10:14:09 +08:00
Marius Vikhammer 41e91faf79 Merge branch 'feature/s31_ipc_freertos' into 'master'
test(freertos): enable tests for esp32-s31

Closes IDF-14685, IDF-14682, and IDF-14668

See merge request espressif/esp-idf!45246
2026-01-23 10:13:32 +08:00
Frantisek Hrbata 07cd7e407b fix(freertos): set app_main as undefined even for linux target
In cmakev1, the initial order of components linked to the executable is
determined by the `__build_expand_requirements` function and stored as a
list in the `BUILD_COMPONENT_ALIASES` build property. Later, the
components from `BUILD_COMPONENT_ALIASES` are linked to the executable
using `target_link_libraries`. The issue is that
`BUILD_COMPONENT_ALIASES` contains components in a "reversed" order
compared to how they would typically appear on the link command line. In
other words, components (archives) deeper in the dependency chain are
placed first. As a result, cmake has to repeat the archives in the link
command more times than is actually necessary. This has the beneficial
side effect of placing libfreertos.a before libmain.a, allowing the
`app_main` symbol to be resolved.

In cmakev2, there is no predefined order because it does not perform
early evaluation. Instead, the entire link command is created based on
actual component dependencies using `target_link_libraries`.
Consequently, freertos must set the `app_main` symbols as undefined.
This is already done for non-Linux targets, but it must also be done for
the Linux target.

Another issue arises with macOS, which mangles C symbols by prepending
an underscore. We cannot use the same method as in
`components/linux/assert_func.c` for `__assert_func`, so for macOS,
`_app_main` is used. In the future, if more undefined symbols need to be
added for the Linux target, we should consider introducing a helper.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2026-01-22 15:41:05 +01:00
Marius Vikhammer c9cf1b2fe5 fix(freertos): limit the experimental support of FREERTOS_SMP to esp32 2026-01-22 10:04:18 +08:00
Marius Vikhammer 7b8d0a0cf2 test(freertos): enable tests for esp32-s31 2026-01-21 09:38:26 +08:00
Michael Wilson 39409058d3 fix(freertos): Correct misleading error messages for vPortEnter/ExitCritical
The error messages for vPortEnterCritical and vPortExitCritical are
misleading when they're called on a multi-core target, as they seem to
imply that the call is NOT supported on a single-core target. In fact,
they are, these functions are, however, not supported on multi-core
targets, so the error message has been updated to reflect this.

Merges https://github.com/espressif/esp-idf/pull/18109
2026-01-13 10:33:45 +01:00
Li Shuai 1494370a40 change(esp_pm): fix ci failed test case of Automatic light occurs when tasks are suspended 2026-01-08 17:48:33 +08:00
Sudeep Mohanty 0f0866f8c8 Merge branch 'task/optimize_freertos_test_coverage' into 'master'
Optimize freertos pytest test coverage to reduce redundant test runs and add support for gcov code coverage

Closes IDF-14186 and IDFCI-7565

See merge request espressif/esp-idf!44048
2026-01-06 15:07:44 +01:00
Michael (XIAO Xufeng) c299c0b749 Merge branch 'refactor/remove_idf_test_component' into 'master'
refactor: Remove idf_test component

Closes IDF-12578

See merge request espressif/esp-idf!43733
2026-01-06 16:20:20 +08:00
Guillaume Souchere 2c8dfc0afb ci(freertos): Add depends_components attribute to build-test-rules.yml 2026-01-05 09:07:27 +01:00
Xiao Xufeng 73735f3e87 test: merge chip-specific performance data headers 2026-01-01 02:35:58 +08:00
Xiao Xufeng 438e07b30e refactor: Remove idf_test component
Split the idf_performance.h and target ver, which hold the performance
thresholds, into the headers of each testing.

In the past pytest also parse the common header to get the thresholds.
Now the logic is also removed. Performance thresholds are supposed to be
in the pytest scripts.
2026-01-01 02:26:42 +08:00
Marius Vikhammer 8ce6bd349b test(core): fixed freertos and newlib test setup leaking memory 2025-12-31 15:40:34 +08:00
Marius Vikhammer e87aee9bac ci(core): fixed esp_event and psram freertos not running properly in CI 2025-12-31 12:38:47 +08:00
Sudeep Mohanty a65c83264f Merge branch 'fix/freertos_tick_hook_test' into 'master'
fix(freertos): Added stability fixes to tick hook test

Closes IDFCI-7671, IDFCI-7672, IDFCI-7679, and IDFCI-7680

See merge request espressif/esp-idf!44402
2025-12-23 17:52:28 +01:00
Sudeep Mohanty fb3b5d93cc test(freertos): Added support for gcov code coverage for FreeRTOS source files
This commit adds the following:
- Added support to FreeRTOS component to report code coverage using gcov
  and app trace.
- Added a new sdkconfig.ci.code_coverage for code coverage tests.
- Added a new Kconfig option CONFIG_FREERTOS_ENABLE_COVERAGE_TESTS to
  control the code instrumentation.
- Added an idf_component.yml file to the test_app to fetch the esp_gcov
  component from the component registry.
- Updated the README to explain how to take code coverage data.
2025-12-23 13:48:59 +01:00
Sudeep Mohanty ededccc839 test(freertos): Optimize pytest test coverage to reduce redundant test runs
This commit optimizes the FreeRTOS test matrix to reduce test execution
time while maintaining the required test coverage.
2025-12-23 13:48:59 +01:00
Sudeep Mohanty 5a847394f9 Merge branch 'fix/freertos_delete_block_tasks_test' into 'master'
test(freertos): Added stability fixes to the delete blocked tasks test

Closes IDFCI-3701, IDFCI-3718, IDFCI-4709, IDFCI-6443, and IDFCI-7544

See merge request espressif/esp-idf!44403
2025-12-23 09:41:54 +01:00
Sudeep Mohanty 2c070fc728 test(freertos): Added stability fixes to the delete blocked tasks test 2025-12-18 16:18:40 +01:00
Sudeep Mohanty 3a21076339 fix(freertos): Added stability fixes to tick hook test 2025-12-18 15:50:48 +01:00
Sudeep Mohanty 7d609d3ac9 test(freertos): Fix race condition in suspend-resume tests
This commit fixes a race condition in suspend-resume tests where in
a test task could escape deletion and result in a memory leak after test
completion.
2025-12-18 12:21:45 +01:00
Erhan Kurubas c2dab51975 change(freertos): add task count and pointer width to OpenOCD debug table 2025-12-17 02:15:19 +01:00
morris 291554cd09 refactor(global): remove completed todos in the codebase 2025-12-15 22:40:15 +08:00
C.S.M f405e51784 ci(esp32s31): Add ci build test for esp32s31 2025-12-11 15:17:15 +08:00
Erhan Kurubas 0544720401 Revert "change(freertos): add task count and pointer width to OpenOCD debug table"
This reverts commit 799de719d7.
2025-12-03 19:39:12 +08:00
Laukik Hase 7c24682643 feat(esp_tee): Add support for the RISC-V H/W stack guard mechanism 2025-11-24 18:49:06 +05:30