Commit Graph

1266 Commits

Author SHA1 Message Date
Armando (Dou Yiwen)
a461861678 fix: fixed image header segment count check
Signed-off-by: Armando (Dou Yiwen) <douyiwen@espressif.com>
2026-07-20 10:25:46 +08:00
Song Ruo Jing
649b14a870 fix(stdio): add console input ability when selects ESP_CONSOLE_UART_CUSTOM_NUM_1 2026-07-08 22:10:49 +08:00
harshal.patil
85055fabff fix(mbedtls): validate ECDSA signature range and harden ECC memory power-down
Co-Authored-By: Ashish Sharma <ashish.sharma@espressif.com>
2026-06-22 11:38:55 +05:30
Omar Chebib
35ec172eaf fix(esp_system): fix a typo in the comments 2026-04-27 10:43:53 +08:00
Angus Gratton
eba4259a73 fix(esp_system): Allow esp_task_wdt_reconfigure() if timer is stopped
If Task WDT is initialised but not start, the call to esp_timer_stop() in
the reconfigure path returns ESP_ERR_INVALID_STATE and reconfiguring the
Task WDT fails. This isn't the case when the Timer Group is used for Task
WDT.

(This failure cascades into the failure due to disabled interrupts, fixed
in the parent commit.)

Signed-off-by: Angus Gratton <angus@redyak.com.au>
2026-04-27 10:39:58 +08:00
Angus Gratton
08ca6ccc96 fix(esp_system): Handle failures correctly in esp_task_wdt_reconfigure()
- Failures were being masked as function always returned ESP_OK
- In the failure path the spinlock was not unlocked, so interrupts
  became permanently disabled.

Signed-off-by: Angus Gratton <angus@redyak.com.au>
2026-04-27 10:39:58 +08:00
Evgeny Torbin
59f62ad15f test: format all test scripts 2026-04-17 16:01:00 +02:00
sibeibei
e891d27b30 fix(wifi): clear regdma status when restart 2026-02-11 21:46:36 +08:00
Jiang Jiang Jian
b89ac6a4c5 Merge branch 'feature/support_7.6.1_pvt_auto_dbias_v5.3' into 'release/v5.3'
feat(esp32c6): auto adjust LDO voltage using pvt function (v5.3)

See merge request espressif/esp-idf!44100
2026-01-30 10:47:20 +08:00
Omar Chebib
3fa48d628a fix(esp_system): prevent .eh_frame-based unwinding from looping indefinitely 2026-01-26 11:51:32 +08:00
zlq
1313aebeaf feat(esp32c6): auto adjust LDO voltage using pvt function 2026-01-26 11:32:11 +08:00
wuzhenghui
9e3aa38706 fix(esp_system): fix rom secure boot fast wake feature for c5/c6/h2/h21 2026-01-12 19:13:41 +08:00
Jiang Jiang Jian
ce002139fd Merge branch 'fix/fix_xtal32k_power_breaks_adc_v5.3' into 'release/v5.3'
fix(esp_system): fix XTAL32K power breaks ADC function on 32k XTAL clock pin (v5.3)

See merge request espressif/esp-idf!43388
2025-12-03 10:31:34 +08:00
Song Ruo Jing
7f18945368 fix(gpio): fix USB DP pin unusable after CPU reset for S3/C3
Closes https://github.com/espressif/esp-idf/issues/17488
2025-11-14 21:01:04 +08:00
wuzhenghui
29cbccc072 fix(esp_system): fix XTAL32K power breaks ADC function on 32k XTAL clock pin 2025-11-14 17:01:21 +08:00
Omar Chebib
c4c458447b fix(esp_system): fix potential warnings related to array size in .eh_frame parser 2025-11-05 13:52:30 +08:00
Xiao Xufeng
e53cf773e4 dma: fixed issue that DMA are not reset when CPU reset
When DMA keep writing the memory, some data may be corrupted after reset. For example, the stack of bootloader may be overwritten and failed to boot until a higher scope of reset (Core).
2025-10-25 03:21:59 +08:00
wuzhenghui
7eb6e53250 fix(esp_system): fix ext 32k io revoking breaks sleep io holding 2025-10-10 20:24:30 +08:00
Jiang Jiang Jian
d57c2af0a3 Merge branch 'feature/ipc_allows_recursion_calls_v5.3' into 'release/v5.3'
feat(ipc): Allow IPC recursion calls in esp_ipc_call (v5.3)

See merge request espressif/esp-idf!41940
2025-09-29 11:50:22 +08:00
Jiang Jiang Jian
2cbf741a09 Merge branch 'fix/panic_handler_reboot_before_halt_v5.3' into 'release/v5.3'
fix(panic_handler): Fixed a issue where the system reboots before halt (v5.3)

See merge request espressif/esp-idf!41268
2025-09-28 17:47:23 +08:00
Guillaume Souchere
862ada0054 feat(usb_cdc): Add select functionality 2025-09-25 09:42:52 +02:00
Konstantin Kondrashov
91c77d1141 feat(ipc): Allow IPC recursion calls in esp_ipc_call 2025-09-16 10:38:59 +03:00
Aditya Patwardhan
01b70763d7 Merge branch 'bugfix/brownout_log_v5.3' into 'release/v5.3'
fix: change brownout log from INFO to ERROR (v5.3)

See merge request espressif/esp-idf!40961
2025-08-20 13:39:26 +05:30
Samuel Obuch
ed268fbbcf feat(esp_system): stop other core for unicore esp32p4 2025-08-20 00:26:58 +08:00
Sudeep Mohanty
fed8781347 fix(panic_handler): Fixed a issue where the system reboots before halt
This commit fixes an issue where the panic handler may reboot even if it
is configured to halt the CPU.

Closes https://github.com/espressif/esp-idf/issues/17260
2025-08-14 11:29:51 +02:00
Mahavir Jain
3fd9b0a7e0 fix: change brownout log from INFO to ERROR 2025-08-01 08:48:44 +05:30
Omar Chebib
67b64ce555 fix(esp_system): fix RTC reserved area alignment in the linker script
Make sure the size of the RTC reserved area complies with the alignment requirement.

Closes https://github.com/espressif/esp-idf/issues/13082
2025-06-17 16:50:10 +08:00
harshal.patil
5e15adfae9 fix(esp_psram): Add XIP PSRAM alignment gaps in heap only if PSRAM protection is enabled 2025-05-21 15:36:41 +05:30
harshal.patil
29f7654c2b feat(cpu_region_protect): Enable basic memory protection for SPIRAM 2025-05-21 15:36:41 +05:30
Armando
21bd94f116 fix(linker): fixed extern linker symbol type from int to char 2025-05-21 15:36:40 +05:30
Jiang Jiang Jian
d950dde7c1 Merge branch 'bugfix/crypto_reset_on_exit_v5.3' into 'release/v5.3'
fix(esp_system): reset crypto peripherals before device restart (v5.3)

See merge request espressif/esp-idf!38476
2025-04-27 14:26:47 +08:00
Jiang Jiang Jian
13091e4a14 Merge branch 'fix/remove-unnecessary-select_v5.3' into 'release/v5.3'
fix(esp_system): Remove unnecessary select from esp_system/Kconfig (v5.3)

See merge request espressif/esp-idf!37521
2025-04-27 14:22:29 +08:00
Alexey Lapshin
bbb257f893 feat(esp_system): drop .got* sections and add hint
Closes https://github.com/espressif/esp-idf/issues/14296
2025-04-24 16:36:31 +08:00
Sudeep Mohanty
3dfb9cec3f fix(panic_handler): Prevent race condition in panic handler
This commit updates all RTC WDT contexts to be local instead of global
to avoid race conditions when both cores enter the panic handler
simultaneously.
2025-04-23 12:53:50 +02:00
Roland Dobai
8b725deb56 Merge branch 'bugfix/esp32p4_linker_script_v5.3' into 'release/v5.3'
fix(esp_system): add missing `arrays` attribute in the ESP32-P4 linker script (backport v5.3)

See merge request espressif/esp-idf!36095
2025-04-21 15:54:05 +08:00
morris
950c9df5e5 Merge branch 'fix/fix_mmu_map_concurrent_issue_v5.3' into 'release/v5.3'
mmu: fix mmu map concurrent issue (v5.3)

See merge request espressif/esp-idf!38410
2025-04-17 21:13:28 +08:00
Mahavir Jain
5b2e8f2b38 fix(esp_system): reset crypto peripherals before device restart
This change addresses a rare but critical issue observed on certain
ESP32-C3 and ESP32-S3 devices, where secure boot verification
intermittently fails due to improper cleanup of crypto peripherals
during a restart.

Background – Restart Behavior in IDF
------------------------------------
In ESP-IDF, when the device restarts (via `esp_restart()` or due to a
panic/exception), a partial peripheral reset is performed followed by a
CPU reset. However, until now, crypto-related peripherals were not
included in this selective reset sequence.

Problem Scenario
----------------
If a restart occurs while the application is in the middle of a bignum
operation (i.e., using the MPI/Bignum peripheral), the ROM code may
encounter an inconsistent peripheral state during the subsequent boot.
This leads to transient RSA-PSS secure boot verification failures.

Following such a failure, the ROM typically triggers a full-chip reset
via the watchdog timer (WDT). This full reset clears the crypto
peripheral state, allowing secure boot verification to succeed on the
next boot.

Risk with Aggressive Revocation
-------------------------------
If secure boot aggressive revocation is enabled (disabled by default in
IDF), this transient verification failure could mistakenly lead to
revocation of the secure boot digest.

If your product configuration has aggressive revocation enabled,
applying this fix is strongly recommended.

Frequency of Occurrence
-----------------------
The issue is rare and only occurs in corner cases involving
simultaneous use of the MPI peripheral and an immediate CPU reset.

Fix
---
This fix ensures that all crypto peripherals are explicitly reset prior
to any software-triggered restart (including panic scenarios),
guaranteeing a clean peripheral state for the next boot and preventing
incorrect secure boot behavior.
2025-04-16 20:31:44 +08:00
wuzhenghui
5ce6c51c28 fix(esp_hw_support): fix unused OSC source deinit breaks XTAL32K configuration 2025-04-16 17:19:08 +08:00
wuzhenghui
8d55741d32 fix(esp_hw_support): fix current leakage if ext32k slow clock source not exists 2025-04-16 17:19:04 +08:00
armando
231694ac25 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-15 14:24:23 +08:00
Marius Vikhammer
7fea3ef20f Merge branch 'bug/xtensa_cpu1_sys_lockup_v5.3' into 'release/v5.3'
fix(panic_handler): Updated panic handler to use RTC WDT (v5.3)

See merge request espressif/esp-idf!37115
2025-04-15 11:05:57 +08:00
Jiang Jiang Jian
4d62ea01b6 Merge branch 'fix/sleep_cpu_mspi_freq_mismatch_issue_p4_v5.3' into 'release/v5.3'
mspi: fixed cpu and mspi freq mismatch issue when in dfs/sleep on p4 (v5.3)

See merge request espressif/esp-idf!37584
2025-03-08 18:45:20 +08:00
Armando
51280e0e8a fix(mspi): fixed cpu and mspi freq mismatch issue when in dfs/sleep on p4 2025-03-08 14:17:02 +08:00
wuzhenghui
f99c3c6343 fix(esp_system): fix possible cache_error by another core accessing flash in esp_restart 2025-03-07 11:05:41 +08:00
Sudeep Mohanty
81109e8bdd fix(panic_handler): Updated panic handler to use RTC WDT
This commit updates the following:
- Updates the panic handler to use only the RTC WDT to reset the system.
- Refactors some of the panic handler code.
- Updates Bluetooth files where in they now feed the WDTs instead of
  reconfiguring them.
- Removes some unnecessary configuration of WDTs from various files.
- Added a unit test to verify that the system does not lock up when the
  panic handler is stuck.
- Updates the memprot unit tests to work with the refactored panic
  handler.

Closes https://github.com/espressif/esp-idf/issues/15166
Closes https://github.com/espressif/esp-idf/issues/15018
Closes https://github.com/espressif/esp-idf/issues/10110
2025-03-06 09:13:17 +01:00
Jan Beran
2a401c768c fix(esp_system): Remove unnecessary select from esp_system/Kconfig 2025-03-05 15:09:25 +01:00
Omar Chebib
105588b113 fix(esp_system): add missing arrays attribute in the ESP32-P4 linker script 2025-03-03 14:21:17 +08:00
Alexey Lapshin
2ff0343243 fix(system): linker script: free unused .rtc.text memory for esp32c3/esp32s2/esp32s3 2025-02-28 10:45:53 +08:00
Jiang Jiang Jian
1698a58881 Merge branch 'fix/add_sleep_duration_check_for_timer_wakeup_v5.3' into 'release/v5.3'
fix(esp_hw_support): add timer wakeup sleep duration check (v5.3)

See merge request espressif/esp-idf!37011
2025-02-19 14:02:53 +08:00
Marius Vikhammer
fa4706e4cb Merge branch 'fix/usb-cdc-non-blocking-read_v5.3' into 'release/v5.3'
fix(esp_vfs_console): USB CDC read when non blocking (backport v5.3)

See merge request espressif/esp-idf!36749
2025-02-18 12:17:26 +08:00