Commit Graph

159 Commits

Author SHA1 Message Date
wuzhenghui
858ecf6f70 feat(esp_hw_support): check psram data is not corrupted after lightsleep 2026-05-19 21:01:21 +08:00
Marius Vikhammer
8f6ea2a1ba test(ci): re-enable ESP32-H4 in core system test apps
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-13 09:00:12 +08:00
Chen Jichang
3c3b9a6a4e ci(esp32h4): disable tests which cannot pass 2026-05-11 16:48:58 +08:00
wuzhenghui
3f6957450f feat(esp_hw_support): support psram PD_TOP retention 2026-05-07 12:02:01 +08:00
Guillaume Souchere
0ce211539a fix(esp_system): PSRAM stack crash in esp_restart_noos on RISC-V chips
On RISC-V chips with SPIRAM support (esp32c5, esp32c61, esp32h4, esp32p4,
esp32s31), esp_restart_noos() was disabling the cache while the current
stack pointer could still be in external RAM. Any stack access after cache
disable (function call, local variable spill) would then fault with
"Cache disabled but cached memory region accessed".

Xtensa chips (esp32, esp32s2, esp32s3) already had this guard via the
SET_STACK macro. Add the equivalent for RISC-V:

- Add rv_utils_set_sp() to riscv/rv_utils.h (plain "mv sp, %0" with a
  memory clobber; no window register management needed on RISC-V)
- In each affected system_internal.c, under
  CONFIG_FREERTOS_TASK_CREATE_ALLOW_EXT_MEM, check whether the current
  SP is in PSRAM and if so switch it to the top of internal BSS before
  any cache disable or writeback operation
- Fix xTaskCreateStaticPinnedToCore() stack size argument in the
  spiram_stack test (was passing bytes instead of word count)
- Mark the null-pointer write in func_do_exception() as volatile to
  prevent the compiler from optimizing it away
- Extend the [spiram_stack] tests to RISC-V by sharing fibonacci() and
  the task/finish helpers across architectures, guarding only the
  Xtensa-specific WINDOWBASE/WINDOWSTART prints
2026-04-28 11:08:55 +02:00
Marius Vikhammer
8e2b416c38 feat(esp_system): add CPU lockup debug support for esp32h4 and esp32s31 2026-04-22 11:11:02 +08:00
morris
425966f88f Merge branch 'feat/etm_esp32s31' into 'master'
feat(etm): add ETM LL and GPIO ETM support on esp32s31

Closes IDF-14724 and IDF-14786

See merge request espressif/esp-idf!47247
2026-04-08 10:08:24 +08:00
armando
61eb179368 feat(cache): support cache msync driver and cache panic driver 2026-04-07 07:48:45 +00:00
morris
43bc8c2fe5 feat(etm): add ETM LL and GPIO ETM support on esp32s31
Enable ETM caps and add S31 ETM/GPIO LL and retention support for
GPTimer ETM builds.
2026-04-07 14:47:36 +08:00
Guillaume Souchere
8706cd6135 feat(esp_system): add linux test for system init function regisration 2026-04-01 11:46:06 +02:00
Fu Hanxi
4f92cfd077 ci: rename eco tags to revision 2026-03-26 12:24:59 +01:00
hebinglin
dfac6f6ef4 change(esp_system): add iram opt for rtc clk resart cases 2026-03-20 16:50:05 +08:00
Konstantin Kondrashov
3b238b2ddb fix(esp_system): Fix flaky tests with memory leak in sleep test 2026-02-17 17:36:53 +02: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
morris
0469db2f83 refactor(rcc): unify the usage of clock control macros for peripherals
- Removed conditional definitions for various RCC_ATOMIC macros across
multiple files, replacing them with a unified PERIPH_RCC_ATOMIC() macro.
- Updated instances where specific RCC_ATOMIC macros were used to ensure
consistent usage of PERIPH_RCC_ATOMIC().
- Deleted unused uart_share_hw_ctrl.h file as its functionality is now
integrated into the new structure.
2026-01-23 18:28:13 +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
Marius Vikhammer
7b8d0a0cf2 test(freertos): enable tests for esp32-s31 2026-01-21 09:38:26 +08:00
hebinglin
fa532d0348 change(esp_system): replace temp_skip_ci with soc_filtered_targets for esp32c5 2026-01-15 11:04:09 +08:00
hebinglin
4756d62584 change(esp_driver): set cases with toppd check only run in esp32c5eco3 rather than eco2 2026-01-12 14:30:57 +08:00
hebinglin
94b54832f8 change(esp_hw_support): remove sleep_mmu_retention related flow for esp32c5 eco1 2026-01-12 14:15:48 +08:00
hebinglin
d164d34f5b revert(unit-test): filter top domain power down check for some sleep test cases
This reverts commit c6c2948a99.
2026-01-12 14:15:48 +08:00
wuzhenghui
f9a0d6ee8a feat(esp_hw_support): add test case for esp_sleep_set_uart_handling 2025-12-19 17:25:47 +08: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
Song Ruo Jing
1862fdec74 refactor(gpio): split GPIO HAL into separate component
cleaned up some includes in GPIO peripheral files
2025-11-26 15:35:07 +08:00
Sudeep Mohanty
25c7a8179d ci(esp_system): Re-enable esp_system tests for esp32p4 2025-11-24 10:25:48 +05:30
armando
b25ba4a0c1 ci(p4): disable p4 rev3 invalid tests temporarily 2025-11-17 12:11:39 +08:00
Marius Vikhammer
a257812e14 feat(stdio): added esp_stdio component
esp_stdio contains everything the old esp_vfs_console contained (the vfs stdio glue layer)
as well as other functionality related to stdio (previously referred to as console)
2025-10-16 10:01:59 +08:00
morris
56c3dc4755 feat(wdt): graduate watch dog hal driver into a new component: esp_hal_wdt 2025-10-14 11:44:32 +08:00
Marek Fiala
9d35d63651 feat(cmake): Update minimum cmake version to 3.22 (whole repository) 2025-08-19 14:44:32 +02:00
Konstantin Kondrashov
1113ef2ff0 feat(ipc): Allow IPC recursion calls in esp_ipc_call 2025-08-12 16:16:09 +03:00
Marius Vikhammer
d8f40df79c ci(system): enable usb-serial-jtag console tests for p4 and c5 2025-08-05 09:56:38 +08:00
Marius Vikhammer
4065fb20f3 Merge branch 'feature/esp_test_utils_component' into 'master'
change(test_utils): moved test_utils out of unit-test-app project

See merge request espressif/esp-idf!40678
2025-08-01 11:04:37 +08:00
Marius Vikhammer
9788d33351 ci(system): update system pytest apps to use SOC_CAPs 2025-07-31 19:05:58 +08:00
Song Ruo Jing
a4bd638385 refactor(uart): use U0RXD_GPIO_NUM and U0TXD_GPIO_NUM macros when possible 2025-07-29 21:59:49 +08:00
Marius Vikhammer
bf84ab652a change(test_utils): moved test_utils component to tools/test_apps/components/ 2025-07-21 14:05:50 +08:00
Fu Hanxi
682388487a Merge branch 'ci/apply-idf-ci-1' into 'master'
ci: apply `idf-ci`

Closes IDFCI-2719

See merge request espressif/esp-idf!38755
2025-07-11 07:18:32 +02:00
Fu Hanxi
a5257dcc39 ci: apply idf-ci pytest plugin
Removed

- target markers. Now must use target as parametrization in esp-idf
- host test markers. Now will be automatically added with linux target and qemu marker
2025-07-09 10:33:28 +02:00
morris
c4d7b1cfce refactor(uart)!: deprcated esp_rom_uart.h 2025-07-08 18:56:17 +08:00
Xiao Xufeng
5aa1a5f6ab esp_system: increase bootloader partition size in examples using framepointer 2025-06-23 16:22:38 +08:00
Nebojsa Cvetkovic
d0ceef20f4 refactor(xtensa): Rename specreg.h register macros
This commit renames all registers in xtensa/specreg.h to by adding the
prefix XT_REG_. This is done to avoid naming collisions with similar
variable names. A new register file, viz., xt_specreg.h is created. The
previous names are still available to use but have been deprecated.

Closes https://github.com/espressif/esp-idf/issues/12723
Merges https://github.com/espressif/esp-idf/pull/16040
2025-06-17 15:37:33 +02:00
Li Shuai
c6c2948a99 change(unit-test): filter top domain power down check for some sleep test cases 2025-06-05 14:28:15 +08:00
Marius Vikhammer
4ea1facb42 Merge branch 'feature/esp32h21_core_support' into 'master'
feat(esp32h21): added support for misc core system features

Closes IDF-12042, IDF-11598, IDF-11596, IDF-11874, IDF-11873, IDF-11528, and IDF-11511

See merge request espressif/esp-idf!38773
2025-04-29 14:53:52 +08:00
Marius Vikhammer
1256078ea2 feat(esp32h21): added support for misc core system features 2025-04-28 11:42:25 +08:00
Marius Vikhammer
298da837fd feat(system): updated reset reasons for H21 2025-04-27 16:11:24 +08:00
armando
1abe57c987 test(system): increased 200B memory leak thresh due to mmu mmap mutex
200B to extend the thresh, real increase to the memory usage will be smaller
2025-04-14 10:45:40 +08:00
Chen Jichang
c34b4eb882 feat(esp32h4): enable ESP32H4 ci build 2025-03-28 14:41:28 +08:00
Marius Vikhammer
12e9d6514a fix(console): fixed secondary console not working on all chips without VFS 2025-03-07 14:41:19 +08:00
igor.udot
daf2d31008 test: format all test scripts 2025-03-05 12:08:48 +08:00