Commit Graph
53680 Commits
Author SHA1 Message Date
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 46e2563b4b Merge branch 'fix/buildv2_fake_pass_pipeline_v6.1' into 'release/v6.1'
ci(buildv2): skip patching the fake_pass build child pipeline (v6.1)

See merge request espressif/esp-idf!51571
2026-08-27 08:19:13 +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
Roland Dobai e30658c10c Merge branch 'chore/remove_old_root_managed_components_tests_v6.1' into 'release/v6.1'
chore: Remove old root managed components tests (v6.1)

See merge request espressif/esp-idf!51075
2026-08-27 08:17:44 +02:00
Roland Dobai 7c890fccf7 Merge branch 'feat/idf_component_include_optional_v6.1' into 'release/v6.1'
feat(cmakev2/component): add OPTIONAL flag to idf_component_include (v6.1)

See merge request espressif/esp-idf!49570
2026-08-27 08:17:12 +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
Roland Dobai 5a5c367ee4 Merge branch 'fix/mcp_support_major_2_v6.1' into 'release/v6.1'
fix(tools): mcp-server supports python package mcp > 2 (v6.1)

See merge request espressif/esp-idf!51569
2026-08-27 08:06:47 +02:00
Roland Dobai 8725046bd7 Merge branch 'fix/ldgen_template_fingerprint_v6.1' into 'release/v6.1'
fix(ldgen): add the linker template to the generation fingerprint (v6.1)

See merge request espressif/esp-idf!51635
2026-08-27 08:06:18 +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
Marius Vikhammer 812f3e98ca Merge branch 'update/version_6_1_0' into 'release/v6.1'
Update version to 6.1.0

See merge request espressif/esp-idf!52001
2026-08-26 16:05:26 +08:00
Marius Vikhammer fff9895c82 change(version): Update version to 6.1.0 v6.1 2026-08-25 11:21:08 +08:00
Marius Vikhammer ae2088092e Merge branch 'feat/update_ble_feature_support_status_0813_v6.1' into 'release/v6.1'
feat(docs): update BLE feature support status for ISO and Core 6.1-6.3 (6.1)

See merge request espressif/esp-idf!51855
2026-08-25 09:57:41 +08:00
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
Sudeep Mohanty 00aea6d1f0 ci(buildv2): collect target tests with IDF_BUILD_V2 active 2026-08-20 14:00:26 +02:00
Sudeep Mohanty c619ab492c ci(buildv2): skip patching the fake_pass build child pipeline
idf-ci emits a skip pipeline containing only a fake_pass job, with no
include of test_child_pipeline.yml, when the modified files match no
buildable apps. patch_buildv2_child_pipeline.py redefined
generate_pytest_child_pipeline unconditionally, assuming the included
template supplied its tags, image and assign_test stage via keyword
merge. With the template absent, the injected job was bare: no tags,
default test stage. It was scheduled on the wrong runner and failed,
turning the allow_failure build_child_pipeline_buildv2 bridge red on
every buildv2 MR whose changes produce an empty app matrix.

Return early when a fake_pass job is present so the child pipeline is
left untouched and skips, matching the default build path. Add a unit
test for the patch script and a host_test job to run it.
2026-08-20 10:14:46 +02: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
Wei Yu Han 6d99bc8fd5 feat(docs): fix PAST and randomized adv channel indexing status
Gate PAST on SOC_ESP_NIMBLE_CONTROLLER, mark randomized advertising
channel indexing host columns as NA, and limit controller experimental
status to NimBLE controllers except ESP32-C2.


(cherry picked from commit 7891e0d65a)

Co-authored-by: Wei Yuhan <weiyuhan@espressif.com>
2026-08-19 09:49:15 +08:00
Wei Yu Han 56a603a07a feat(docs): update BLE feature support status for ISO and Core 6.1-6.3
Mark ISOAL/ISO features as experimental when SOC_BLE_ISO_SUPPORTED,
add unsupported Core Spec 6.1-6.3 features, and move NimBLE LL Extended
Feature Set target to 2026/12.


(cherry picked from commit bacdf4ba93)

Co-authored-by: Wei Yuhan <weiyuhan@espressif.com>
2026-08-19 09:49:15 +08:00
Wei Yu Han 4938818365 feat(docs): Updated BLE support features status
(cherry picked from commit cfd47ad13a)

Co-authored-by: Wei Yuhan <weiyuhan@espressif.com>
2026-08-19 09:49:15 +08:00
Ivan Grokhotkov f90cd7dd78 Merge branch 'update/version_6_1_0' into 'release/v6.1'
Update version to 6.1.0

See merge request espressif/esp-idf!51792
2026-08-18 17:20:45 +02:00
Ivan Grokhotkov 44f0c59f7c change(version): Update version to 6.1.0 v6.1-rc1 2026-08-14 13:26:52 +02:00
Ivan Grokhotkov f995fbdf77 Merge branch 'docs/idf_sbom_multi_format_v6.1' into 'release/v6.1'
docs: Update the SBOM guide for multiple output formats (v6.1)

See merge request espressif/esp-idf!51455
2026-08-14 13:24:16 +02: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
Ondrej Kosta 5e4f3308e4 feat(ci): support downloading extra app artifacts in pytest
Add app_extra S3 artifact type, extend idf-ci download plumbing, and
expose a download_app_extra pytest fixture for managed_components deps.
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
morris 6236807af1 Merge branch 'fix/mspi_pre_commit_fix_v6.1' into 'release/v6.1'
fix(spi_flash): remove mspi_test xip_psram test with missing config to fix check_pre_commit job (v6.1)

See merge request espressif/esp-idf!51731
2026-08-13 16:07:46 +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
morris 867e4fc2d1 Merge branch 'fix/xmc_skip_vendor_0x46_v6.1' into 'release/v6.1'
fix(bootloader): skip XMC startup for vendor ID 0x46(backport v6.1)

See merge request espressif/esp-idf!51702
2026-08-13 10:43:29 +08:00
C.S.MandCursor 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 da926220bd fix(ldgen): add the linker template to the generation fingerprint
ldgen skips regeneration when a fingerprint over the section names, the
linker fragment files, sdkconfig and Kconfig is unchanged. The linker
script template was not part of that fingerprint, even though everything
outside its mapping placeholders is copied into the generated script
verbatim.

The build system regenerates the preprocessed template whenever any of
its inputs changes, not only when a linker fragment changes. When such a
change reaches ldgen but leaves the section names alone, the fingerprint
still matches, generation is skipped, and the image is linked against the
previously generated script. The skip path updates the mtime of the
output, so nothing in the build output shows that the change was dropped.

Add the template to the fingerprint so that regenerating it always
regenerates the linker script.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2026-08-10 08:30:31 +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
Marek FialaandCursor 6d8d63da51 fix(tools): support mcp Python SDK 2.0 for mcp-server
FastMCP was renamed to MCPServer in mcp 2.0, which made idf.py mcp-server
report a false "MCP dependencies not available" error. Prefer MCPServer
and keep a FastMCP fallback for mcp 1.x.

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

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 15:35:49 +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
Frantisek Hrbata bb7d25e625 docs: Update the SBOM guide for multiple output formats
Document the create --format option (SPDX 2.2 tag/value and JSON, SPDX 3.0.1
JSON-LD, and CycloneDX 1.6) and the new --file option on idf.py sbom-create and
sbom-check, and generalize the previously SPDX-only wording. Note the NVDAPIKEY
variable for faster online scans, document that sbom-check exits with a non-zero
status when vulnerabilities are found, drop an unused link target, and update the
SBOM reference link. Fix the section heading levels to follow the esp-docs
conventions.
2026-08-03 13:27:43 +02:00
Alexey Lapshin c2283ca1ca feat(soc): enable zb* extensions for esp32s31 2026-08-03 14:12:30 +08:00