Commit Graph

880 Commits

Author SHA1 Message Date
wuzhenghui
90f6eeb327 feat(freertos): introduce thread-safe context management functions 2026-06-18 09:41:39 +08:00
Jiang Jiang Jian
41a7095015 Merge branch 'feat/support_usb_wakeup_from_light_sleep' into 'master'
feat: support usb wakeup from light sleep

Closes IDF-7212

See merge request espressif/esp-idf!48988
2026-06-17 19:50:11 +08:00
JiangGuangMing
6020aec177 fix(usb): address wakeup example review comments
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 18:59:24 +08:00
JiangGuangMing
348c4a4f19 feat(docs): update docs for usb wakeup from light sleep example 2026-06-10 15:14:37 +08:00
Marius Vikhammer
ecb4123afd Merge branch 'bugfix/int_wdt_default_psram' into 'master'
fix(iwdt): increased default timeout if using PSRAM

Closes IDFGH-17392

See merge request espressif/esp-idf!49425
2026-06-10 10:20:20 +08:00
Marius Vikhammer
e3570108ac fix(iwdt): increased default timeout if using PSRAM
Default timeout for interrupt WDT was increased by default
on ESP32, due to some heap integrity check APIs taking a long
time on large PSRAMs and causing timeouts.

But this adjustment was only done for ESP32, not later chips,
even though they may experience the same issue.

Adjusted to have the same behavior on all chips with PSRAM
enabled, making it consistant with the docs.

Closes https://github.com/espressif/esp-idf/issues/18360
2026-06-09 17:18:58 +08:00
hebinglin
46ff88717c fix(ulp): fix lp uart keep wakeup triggered 2026-06-08 16:17:09 +08:00
Konstantin Kondrashov
7a573330b8 Merge branch 'feature/efuse_dump' into 'master'
feat(efuse): Support efuse token dump

Closes IDF-14046

See merge request espressif/esp-idf!41754
2026-06-05 11:15:30 +03:00
Konstantin Kondrashov
885097762f feat(efuse): Support efuse token dump
- efuse token dump is compatible with espefuse tool
- EFSW dump can be burned on chip with esp_efuse_token_burn()
2026-06-03 13:19:59 +03:00
Konstantin Kondrashov
ce76bb9a4d Merge branch 'feature/adds_ipc_isr_safe_api' into 'master'
feat(ipc_isr): Adds IPC ISR safe API to stall other CPU

See merge request espressif/esp-idf!41005
2026-06-03 13:06:22 +03:00
Konstantin Kondrashov
672736304c feat(ipc_isr): adds IPC ISR safe API for other CPU stall API 2026-06-02 13:57:47 +03:00
Guillaume Souchere
33e774397c Merge branch 'feat/error-code-registration' into 'master'
feat(esp_common): implement composable error code registration via link-time arrays

Closes IDF-15105 and IDF-15486

See merge request espressif/esp-idf!46125
2026-06-01 09:40:37 +02:00
Guillaume Souchere
3afe8a2970 Merge branch 'fix/heap-minimum-free-size' into 'master'
fix(heap): Do not consider newly registered heap in minimum free size calculation

Closes IDF-15682

See merge request espressif/esp-idf!48681
2026-05-29 07:46:52 +02:00
Guillaume Souchere
177024eeeb fix(heap): Do not consider newly registered heap in minimum free size calcualtion
After startup is done and app_main is reached, all calls to
heap_caps_add_region_with_caps (adding a new heap to the list of registered
heaps) will not affect the minimum free heap size value.

For heaps created before startup, this won't apply and their size will
end up being taken into account in the calculation of the minimum.
2026-05-28 10:30:25 +02:00
Guillaume Souchere
d670774f5c feat(esp_common): implement composable error code registration via link-time arrays
Refactor the esp_err_to_name() system to decouple esp_common from
higher-level components. Instead of a monolithic generated table,
each component registers its error codes into a dedicated linker
section (.esp_err_msg_table) via idf_define_esp_err_codes() in its
CMakeLists.txt.

New files:
- tools/err_codes_extract.py: extract ESP_ERR_* defines from headers to CSV
- tools/err_codes_to_c.py: generate C source placing entries into linker section
- tools/err_codes_to_rst.py: generate RST documentation from error codes
- tools/cmake/err_codes.cmake: CMake module providing idf_define_esp_err_codes()
- components/esp_common/include/esp_err_codes.h: esp_err_msg_t typedef
- components/esp_common/src/esp_err_to_name_new.c: new lookup using link-time array
- tools/test_apps/build_system/err_codes_check/: CI test app

Changes:
- Remove all optional component dependencies from esp_common/CMakeLists.txt
- Add .esp_err_msg_table section to all 5 linker scripts
- Register error codes in 18 components via idf_define_esp_err_codes()
- Add new scripts to .gitlab/ci/rules.yml build_check patterns
- use new scripts to generate doc and add CI validation
- Update esp_err.rst to add description of composable code registration
2026-05-28 09:53:32 +02:00
He Binglin
3bf83125b4 Merge branch 'change/esp_idf_ext1_unhold' into 'master'
Optimize parts of the sleep wake-up flow

See merge request espressif/esp-idf!47322
2026-05-25 11:15:22 +08:00
hebinglin
23f6b5985a change(esp_hw_support): disable flash pd in h4 h21 c5 c61 2026-05-22 12:30:44 +08:00
hebinglin
2e59c25ecb docs(pm): add flash sleep strategy recommendations 2026-05-22 12:30:09 +08:00
hebinglin
418ffbe2a6 change(esp_pm): move timer wakeup set out of critical section 2026-05-22 11:45:21 +08:00
Wu Zheng Hui
91e66a8d19 Merge branch 'feat/support_io_edge_wakeup' into 'master'
feat(esp_hw_support): support rtc io edge wakeup sleep

Closes FCS-1880 and IDF-11812

See merge request espressif/esp-idf!48410
2026-05-20 19:37:35 +08:00
wuzhenghui
0bd5331db7 feat(doc): update docs for sleep gpio edge wakeup 2026-05-20 11:04:03 +08:00
Konstantin Kondrashov
1ced5355fd feat(docs): Update efuse doc for H21 2026-05-19 15:38:19 +03:00
Konstantin Kondrashov
b0da67ab1d feat(docs): Update efuse doc for H4 2026-05-19 15:17:50 +03:00
Gao Xu
69136606ab Merge branch 'feat/s31_rng_basic_support' into 'master'
Feat/s31 rng support

Closes IDF-14632, WIFIBUG-1875, and TZ-2554

See merge request espressif/esp-idf!47217
2026-05-13 17:47:59 +08:00
gaoxu
07aaba7c7b refactor(rng): move rng read data function to rng_ll.h and update docs of RNG source 2026-05-13 15:09:55 +08:00
Marius Vikhammer
c3ed3898eb Merge branch 'feature/s31_lpcpu_pmp' into 'master'
feat(ulp): support lp-core PMP on ESP32-S31

Closes IDF-15240

See merge request espressif/esp-idf!48335
2026-05-12 11:14:20 +08:00
Marius Vikhammer
88b39e88c4 feat(ulp): support lp-core PMP on ESP32-S31 2026-05-12 09:20:30 +08:00
Shen Meng Jing
7b3b94e6af Merge branch 'docs/sync_cn_and_en_docs' into 'master'
docs: Sync CN and EN docs missing the translation label

Closes DOC-14472

See merge request espressif/esp-idf!48241
2026-05-11 15:43:32 +08:00
Shen Mengjing
1e71307770 docs: Sync CN and EN docs missing the translation label 2026-05-11 14:08:45 +08:00
renpeiying
4e34ec5193 docs: Update CN translation for mm.rst 2026-05-07 17:17:02 +08:00
Jiang Jiang Jian
0c832c345a Merge branch 'feat/add_auto_lightsleep_example' into 'master'
feat(example): add power management example

Closes PM-672

See merge request espressif/esp-idf!46051
2026-05-06 15:26:21 +08:00
Konstantin Kondrashov
6adb99a389 Merge branch 'feature/support_efuses_esp32s31' into 'master'
feat(efuse): Support efuses for ESP32S31

Closes IDF-14688

See merge request espressif/esp-idf!47986
2026-04-30 12:08:52 +03:00
Konstantin Kondrashov
c29532f98c feat(efuse): Support efuses for ESP32S31 2026-04-29 15:50:32 +03:00
Marius Vikhammer
261bd160aa feat(ulp): support placing ULP app in HP-RAM 2026-04-29 09:47:33 +08:00
Omar Chebib
5a2e84c07c Merge branch 'feat/esp_mmu_map_virt' into 'master'
feat(esp_mm): implement a mapping function to map at given virtual address

Closes IDF-15537 and IDF-6132

See merge request espressif/esp-idf!47219
2026-04-27 13:44:52 +08:00
Omar Chebib
108af825bf feat(esp_mm): implement a mapping function to map at given virtual address 2026-04-22 18:18:33 +08:00
Shen Meng Jing
06c2bc2048 Merge branch 'docs/update_cn_ram_usage_and_log' into 'master'
docs: Update CN translations for ram-usage.rst and log.rst

Closes DOC-14343

See merge request espressif/esp-idf!47813
2026-04-22 14:43:49 +08:00
Shen Mengjing
0aeccc1adf docs: Update CN translations for ram-usage.rst and log.rst 2026-04-22 14:36:22 +08:00
Marius Vikhammer
1af2cc08bb Merge branch 'feature/ulp_esp32s31' into 'master'
feat(ulp): add support for ulp on esp32s31

Closes IDF-14640

See merge request espressif/esp-idf!47268
2026-04-20 19:19:35 +08:00
Marius Vikhammer
10637dbf5e feat(ulp): add support for ulp on esp32s31 2026-04-20 14:45:23 +08:00
Guillaume Souchere
6a5817cfde Merge branch 'fix/log-dram-early-direct-rom-printf' into 'master'
fix(esp_log): Add Kconfig option to disable usage of esp_rom_vprintf when this function is in IRAM and not ROM

Closes IDFGH-17376

See merge request espressif/esp-idf!46640
2026-04-20 08:21:58 +02:00
Guillaume Souchere
ea1af7c141 feat(log): Add test for constrained environment usage config 2026-04-17 12:46:23 +02:00
Wu Zheng Hui
ec5f956516 Merge branch 'doc/fix_sleep_mode_doc' into 'master'
docs(system): update GPIO wakeup section for clarity on EXT0 and EXT1 support

See merge request espressif/esp-idf!47362
2026-04-14 16:38:34 +08:00
wuzhenghui
4b874b58af docs(system): update GPIO wakeup section for clarity on EXT0 and EXT1 support 2026-04-08 16:59:03 +08:00
Guillaume Souchere
0cba1db0ed fix(esp_log): add Kconfig to optionally bypass esp_rom_vprintf
In Log V2, ESP_LOG macros are using the runtime
constrained-environment path in esp_log_vprintf() reference
esp_rom_vprintf as the fallback formatter. On chips where ets_vprintf
is not in ROM (all targets except ESP32-S2 and ESP32-C2), this pulls
~1.2 KB of printf implementation into IRAM.

Add a new Kconfig option LOG_API_CONSTRAINED_ENV_SAFE (default y) that
controls whether this IRAM-resident fallback is used:

Also update the logging and RAM-usage documentation accordingly.

Closes https://github.com/espressif/esp-idf/issues/18346
2026-04-07 12:00:51 +02:00
renpeiying
6a6a25817b docs: Update CN translation for intr_alloc 2026-04-07 14:19:54 +08:00
wuzhenghui
f4eca3c42f feat(example): implement power management example for ESP chips 2026-04-07 10:29:45 +08:00
Omar Chebib
38abf98216 feat: add support for PIE coprocessor on the ESP32-S31 2026-03-31 13:27:16 +08:00
Marius Vikhammer
1cab04c24f Merge branch 'fix/issue-18391-psram-default-docs' into 'master'
docs: clarify PSRAM default allocation behavior

See merge request espressif/esp-idf!46985
2026-03-26 10:18:22 +08:00
Marius Vikhammer
c1256efd67 docs: clarify PSRAM default allocation behavior
Clarify that MALLOC_CAP_DEFAULT describes a memory capability
rather than the malloc() placement policy, so PSRAM-backed
capability allocations are documented correctly when malloc()
remains internal-only by default.

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

Made-with: Cursor
2026-03-25 15:35:21 +08:00