Commit Graph

37383 Commits

Author SHA1 Message Date
Alexey Gerenkov
89bc2b8bc4 Merge branch 'feature/upgrade-esp-rom-elfs_v6.1' into 'release/v6.1'
feat(tools): tools: update esp-rom-elf to version 20260528 (v6.1)

See merge request espressif/esp-idf!50846
2026-08-27 16:15:10 +08:00
Alexey Gerenkov
ad05a2522a Merge branch 'enable_esp32s31_jtag_tests_v6.1' into 'release/v6.1'
change(ci): enable esp32s31 jtag tests (v6.1)

See merge request espressif/esp-idf!50735
2026-08-27 16:09:51 +08:00
Alexey Gerenkov
67d7993822 Merge branch 'coredump_test_fixes_v6.1' into 'release/v6.1'
Coredump fixes (v6.1)

See merge request espressif/esp-idf!50473
2026-08-27 16:00:22 +08:00
Alexey Gerenkov
8418c3b7de Merge branch 'feat/enable_debug_record_s31_v6.1' into 'release/v6.1'
feat(hal): implement enable_debug/enable_record for ESP32S31 CPU utility (v6.1)

See merge request espressif/esp-idf!50987
2026-08-27 15:52:29 +08:00
Mahavir Jain
314714fb31 Merge branch 'fix/fix_esp_mbedtls_read_return_code_v6.1' into 'release/v6.1'
fix(esp-tls): correct return codes and harden TLS 1.3 ticket handling (v6.1)

See merge request espressif/esp-idf!51863
2026-08-27 12:30:34 +05:30
Mahavir Jain
7be5451cd6 Merge branch 'fix/harden_mbedtls_port_layer_v6.1' into 'release/v6.1'
fix(mbedtls): harden port layer to zeroize sensitive material (v6.1)

See merge request espressif/esp-idf!50315
2026-08-27 12:30:19 +05:30
Mahavir Jain
61f4e8075a Merge branch 'fix/harden_esp_hw_support_v6.1' into 'release/v6.1'
fix(esp_hw_support): harden memprot and fix bugs (v6.1)

See merge request espressif/esp-idf!51869
2026-08-27 12:29:49 +05:30
Mahavir Jain
9058e758d7 Merge branch 'fix/disable-key-mgr_v6.1' into 'release/v6.1'
Disable Key Manager support (v6.1)

See merge request espressif/esp-idf!51390
2026-08-27 12:29:18 +05:30
Mahavir Jain
7b18822f6d Merge branch 'fix/esp32s2_aes_dma_psram_partial_block_hang_v6.1' into 'release/v6.1'
Avoid ESP32-S2 Crypto DMA stall on PSRAM output with partial blocks (v6.1)

See merge request espressif/esp-idf!51874
2026-08-27 12:28:47 +05:30
Mahavir Jain
1e1c7def16 Merge branch 'fix/nvs-encrypted-partition-destructor-zeroize_v6.1' into 'release/v6.1'
fix(nvs_flash): zeroize XTS contexts when encrypted partition is destroyed (v6.1)

See merge request espressif/esp-idf!50805
2026-08-27 12:27:24 +05:30
Mahavir Jain
2335083b89 Merge branch 'feat/mbedtls_update_4.1.1_v6.1' into 'release/v6.1'
Feat/mbedtls update 4.1.1 (v6.1)

See merge request espressif/esp-idf!50978
2026-08-27 12:26:56 +05:30
Mahavir Jain
7b753bb983 Merge branch 'contrib/github_pr_18734_v6.1' into 'release/v6.1'
Fix header value truncation detection in httpd_req_get_hdr_value_str (GitHub PR) (v6.1)

See merge request espressif/esp-idf!50536
2026-08-27 12:26:12 +05:30
Mahavir Jain
f4c38825c4 Merge branch 'feat/esp_http_server-ws-strictness-foundation-and-handshake_v6.1' into 'release/v6.1'
feat(esp_http_server): update websocket server to check RFC6455 headers (v6.1)

See merge request espressif/esp-idf!51861
2026-08-27 12:25:58 +05:30
Roland Dobai
26793ea144 Merge branch 'feat/enable_zb_extensions_for_s31_v6.1' into 'release/v6.1'
feat(soc): enable zb* extensions for esp32s31 (v6.1)

See merge request espressif/esp-idf!51323
2026-08-27 08:25:51 +02:00
Roland Dobai
138482998d Merge branch 'feature/use_zcmp_by_default_v6.1' into 'release/v6.1'
feat(build): add ZCMP workaround post-build check (v6.1)

See merge request espressif/esp-idf!51325
2026-08-27 08:24:39 +02:00
Roland Dobai
b737501fd4 Merge branch 'bugfix/cmakev2-coredump-default-component_v6.1' into 'release/v6.1'
fix(cmakev2): include config-selected default components (v6.1)

See merge request espressif/esp-idf!51930
2026-08-27 08:21:54 +02:00
Roland Dobai
4d777fd05a Merge branch 'fix/harden_empty_toolchain_output_v6.1' into 'release/v6.1'
fix: harden build against empty toolchain output (v6.1)

See merge request espressif/esp-idf!51643
2026-08-27 08:20:56 +02:00
Roland Dobai
090748c95c Merge branch 'fix/cxx_libgcc_cxx_self_reference_v6.1' into 'release/v6.1'
fix(cxx): avoid self-referential generator expression in libgcc_cxx (v6.1)

See merge request espressif/esp-idf!51593
2026-08-27 08:19:29 +02:00
Roland Dobai
d569196686 Merge branch 'fix/fix_esp32s31_xip_bss_psram_build_failure_v6.1' into 'release/v6.1'
fix(esp_system): fix backwards location-counter move in `.ext_ram.dummy` on same-region targets (v6.1)

See merge request espressif/esp-idf!51179
2026-08-27 08:18:46 +02:00
Euripedes Rocha
a1f8696a3c Merge branch 'contrib/github_pr_18648_v6.1' into 'release/v6.1'
esp_eth: make OpenETH ISR logging DRAM-safe (GitHub PR) (v6.1)

See merge request espressif/esp-idf!51923
2026-08-27 08:08:42 +02:00
Euripedes Rocha
cdec505ebd Merge branch 'feat/eth_test_component_v6.1' into 'release/v6.1'
feat(esp_eth): updated test_apps to use Ethernet test component (v6.1)

See merge request espressif/esp-idf!49658
2026-08-27 08:07:55 +02:00
Laukik Hase
825ffb4d00 Merge branch 'fix/esp_tee_stk_ptr_bug_v6.1' into 'release/v6.1'
fix(esp_tee): Validate the stack pointer at the privilege switch boundary (v6.1)

See merge request espressif/esp-idf!51485
2026-08-27 10:58:31 +05:30
harshal.patil
a827d27b12 change(security): disable Key Manager support on ESP32-C5/P4/S31
The Key Manager hardware peripheral in its current form needs further
design changes before it can be offered as a production feature.
Until a revised peripheral design is available, withdraw ESP-IDF
support for it on all Key Manager capable targets.
2026-08-26 13:23:56 +05:30
harshal.patil
e5d9a7f1a5 test(mbedtls): add partial-block PSRAM coverage for AES and AES-GCM
Extend the CTR test data length to 6433 bytes so the trailing partial
block is exercised with external RAM buffers (which stalls the ESP32-S2
Crypto DMA on an unfixed driver), and add AES-GCM PSRAM tests verified
against internal RAM references.
2026-08-21 10:30:05 +05:30
Marius Vikhammer
702f6354ec fix(cmakev2): include config-selected default components 2026-08-21 10:24:17 +08:00
Dhimas Ardinata
069834537c fix(esp_eth): make openeth ISR log DRAM-safe
Keep the ISR from touching flash-resident log strings while cache is disabled.

Closes #18644
2026-08-20 21:41:34 -03:00
harshal.patil
da744fe061 fix(mbedtls/aes): fix ESP32-S2 Crypto DMA stall on PSRAM output with partial blocks
The ESP32-S2 Crypto DMA in-channel stalls silently when a receive
descriptor list transitions from external to internal RAM. The AES
driver hits this when a PSRAM-output operation has a trailing partial
block, as the internal stream descriptor is linked after the external
RAM data descriptors.

- esp_aes_process_dma(): process the block-aligned part and the partial
  block as two separate DMA operations, keeping each descriptor list
  uniform
- crypto_dma_ll_reset(): also reset the in-channel (per the TRM receive
  reset sequence), otherwise stale state from a preceding external-RAM
  operation corrupts the next operation's output

The GCM DMA path is unaffected; it never operates on PSRAM buffers.
2026-08-19 13:26:27 +05:30
Ashish Sharma
1db72cfe4d fix(esp_hw_support): harden memprot and fix bugs 2026-08-19 13:32:38 +08:00
Ashish Sharma
6a693e6fbb fix(esp-tls): correct return codes and harden TLS 1.3 ticket handling 2026-08-19 11:45:28 +08:00
Ashish Sharma
b8db34d987 fix(ws): enforce RFC 6455 §4.2.1 handshake requirements 2026-08-19 11:43:00 +08:00
Ashish Sharma
78b878dbab test(http_server): add mock TCP client for black-box WS testing 2026-08-19 11:42:59 +08:00
Ondrej Kosta
0c111210c9 ci(esp_eth): use fixed version of eth_test_app 2026-08-13 20:53:55 +08:00
Ondrej Kosta
7a2dbd629a feat(esp_eth): update test_apps to use Ethernet test component
Move test logic into the eth_test_app managed component and slim down
the test_apps main target and pytest suite accordingly.
2026-08-13 20:53:55 +08:00
morris
2440288f5b Merge branch 'fix/fix_mpll_init_flow_v6.1' into 'release/v6.1'
mpll: improved mpll init flow (v6.1)

See merge request espressif/esp-idf!51660
2026-08-13 20:44:49 +08:00
Sudeep Mohanty
7ef0e494b1 fix(spi_flash): remove mspi_test xip_psram test with missing config 2026-08-13 14:53:01 +08:00
C.S.M
8d3e6ebe02 fix(bootloader): skip XMC startup for vendor ID 0x46
Chips with RDID vendor 0x46 are not XMC and should not enter the XMC
startup flow via the RDID fast path.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-12 17:22:38 +08:00
Armando (Dou Yiwen)
569c22ea2b fix(mpll): fix mpll calibration fail bug 2026-08-12 13:22:22 +08:00
Frantisek Hrbata
86c4c63780 fix: harden build against empty toolchain output
On some Windows systems, antivirus, endpoint-security or DLP/encryption
software intercepts short-lived toolchain processes and strips their
stdout when the build captures it through a pipe, while the same command
prints its output normally when run by hand. The tool exits successfully
but returns nothing, and each build step that reads toolchain output then
failed with a different, cryptic error far from the real cause:

- CMake configuration aborted with "Unknown arguments specified" in
  components/xtensa/project_include.cmake, or "check_expected_tool_version
  invoked with incorrect arguments" in components/esp_common.
- ldgen turned the empty objdump output into an opaque pyparsing
  "Expected 'In archive'" traceback.
- idf_tools.py silently reported the compiler/debugger version as
  "unknown", sending users into a fruitless reinstall loop.

Detect the empty result at each consumer and fail (or warn) with an
actionable message that names the likely cause and the remedy:

- tools/cmake/compiler_query.cmake: new __compiler_query() helper runs a
  compiler query and fails with a clear error on empty or failed output.
  It is a standalone module included by both the cmakev1 and cmakev2
  utilities, since the esp_common and xtensa project_include.cmake that
  call it are shared by both build systems. The xtensa if() arguments are
  now quoted so an empty result no longer collapses into a parse error.
- tools/ldgen/ldgen.py: _run_objdump() rejects empty objdump output, and
  non-empty-but-unparsable section info is caught and re-raised as a clear
  LdGenFailure instead of a raw pyparsing traceback.
- tools/idf_tools.py: empty version output now warns with the cause and
  returns UNKNOWN_VERSION instead of silently reporting "unknown".

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

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2026-08-10 09:05:01 +02:00
Frantisek Hrbata
94c4fe3d94 fix(cxx): avoid self-referential generator expression in libgcc_cxx
The cxx component re-injects its own archive late on the link line so its
stack-unwind wrappers take precedence over libgcc's (when C++ exceptions
are disabled). It does this through an INTERFACE helper, libgcc_cxx, that
carries `$<TARGET_FILE:${cxx}>`. That helper was linked back into the cxx
target with PUBLIC, which places it in the cxx archive's own
LINK_LIBRARIES, so the cxx target ends up transitively referencing its
own output file.

When CMake computes the cxx target's sources it walks the target's own
link implementation, encounters `$<TARGET_FILE:${cxx}>`, and to resolve the
file it needs the target's link language, which in turn needs its
sources. This loop makes generation fail with:

    The SOURCES of "..." use a generator expression that depends on the
    SOURCES themselves.

CMake only hits this when it reaches the cxx target standalone before the
target has been pulled into a link by a consumer, and whether that
happens depends on the project layout and target evaluation order. That
is why it surfaces only in some projects, while the examples build fine.

Link libgcc_cxx as INTERFACE instead of PUBLIC. A static archive is not
linked, so its private LINK_LIBRARIES are inert; consumers still receive
libgcc_cxx through INTERFACE_LINK_LIBRARIES, so the intended link order is
preserved. Removing the self-reference makes generation independent of
evaluation order.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2026-08-06 15:31:37 +02:00
Laukik Hase
548f85cb53 fix(esp_tee): Validate REE-supplied memory bounds (esp_tee_app_config) before use 2026-08-04 12:10:53 +05:30
Laukik Hase
773761abb8 fix(esp_tee): Validate the stack pointer at the privilege switch boundary 2026-08-04 12:10:52 +05:30
Alexey Lapshin
c2283ca1ca feat(soc): enable zb* extensions for esp32s31 2026-08-03 14:12:30 +08:00
Alexey Lapshin
a494009a0c feat(build): add RISC-V ZCMP post-link workaround check
Validate linked RISC-V executables when
CONFIG_COMPILER_ENABLE_RISCV_ZCMP is enabled on affected chips.
Disassemble each function and reject mstatus.MIE clears that lack an
earlier mintthresh write of 0xff.

Handle csrrci, csrrw, and register-mask csrrc patterns while ignoring
csrrs. Add build-only coverage for valid and invalid sequences with
CMake v1 and v2.

Stop the hardware stack guard before switching stacks during restart,
and keep ZCMP disabled for TEE test apps that still require the
workaround.
2026-08-03 14:10:00 +08:00
Jiang Jiang Jian
6a9c44fe7e Merge branch 'fix/ble_log_compression_add_local_header_file_v6.1' into 'release/v6.1'
feat(ble_log): mirror local compression headers (6.1)

See merge request espressif/esp-idf!50953
2026-08-03 10:48:09 +08:00
Jiang Jiang Jian
7105b85101 Merge branch 'fix/backport_wifi_issues_v6.1' into 'release/v6.1'
Backport a few wifi fixes (Backport v6.1)

See merge request espressif/esp-idf!51224
2026-08-01 07:28:52 +08:00
Jiang Jiang Jian
2da2c60798 Merge branch 'bugfix/ftm_calibration_v6.1' into 'release/v6.1'
fix(ftm): Update FTM calibraton values for esp32c5, esp32c3, esp32c6, esp32c61

See merge request espressif/esp-idf!51407
2026-08-01 00:16:47 +08:00
Akshat Agrawal
85a59c8405 fix(nan): Fix bug bounty reported and discovered vulnerabilities in NAN Rx 2026-07-31 19:42:27 +08:00
zhangyanjiao
0290f8fc2d fix(wifi): fixed the assignment error in esptouch v2 2026-07-31 19:42:27 +08:00
zhangyanjiao
9e1e33a151 fix(wifi): fixed the buffer overflow issues
1. Added validation for password and reserved data length in ESPTouch v2
2. Added bound check for data index in ESPTouch v1 HT40
3. prevent buffer overflow when parsing MBSSID beacon
2026-07-31 19:42:27 +08:00
Jiang Jiang Jian
d52ecaa3ea Merge branch 'bugfix/low_spp_throughput_v6.1' into 'release/v6.1'
change(bt/bluedroid): increased port low watermark of RFCOMM (v6.1)

See merge request espressif/esp-idf!51083
2026-07-31 19:35:19 +08:00