Commit Graph
1900 Commits
Author SHA1 Message Date
morris 255cce5d1f Merge branch 'feat/spiram_enc_exempt_v6.0' into 'release/v6.0'
feat(esp_psram): add option to carve unencrypted PSRAM region (v6.0)

See merge request espressif/esp-idf!48810
2026-06-30 15:22:36 +08:00
Fu Hanxi 3a77af68b2 Merge branch 'ci/stable-build-jobs-v6.0' into 'release/v6.0'
Ci/stable build jobs v6.0

See merge request espressif/esp-idf!48715
2026-06-29 10:03:00 +02:00
Jiang Jiang Jian bcfdd44e40 Merge branch 'docs/add_semihosting_chapter_v6.0' into 'release/v6.0'
docs(jtag-debugging): add semihosting chapter (v6.0)

See merge request espressif/esp-idf!49888
2026-06-29 15:42:54 +08:00
Jiang Jiang Jian dcbeafd594 Merge branch 'feat/esp_trace_example_v6.0' into 'release/v6.0'
esp_trace example library integration (v6.0)

See merge request espressif/esp-idf!49092
2026-06-29 15:35:30 +08:00
Fu Hanxi aef705e678 feat(build): support env var IDF_PY_BUILD_JOBS for ninja jobs 2026-06-29 08:52:15 +02:00
Mahavir Jain 4163417ff1 Merge branch 'feat/support_rom_psa_mbedtls_v6.0' into 'release/v6.0'
feat(mbedtls): enable ESP32-C2(Rev2.0) ROM mbedTLS crypto for PSA (v6.0)

See merge request espressif/esp-idf!48843
2026-06-29 11:22:33 +05:30
Erhan Kurubas 6cb1b59e7c feat(esp_trace): add example to demonstrate external lib integration 2026-06-26 14:12:09 +02:00
Zhang Shuxian 75f5ddfd44 docs: Update CN translation for idf-py.rst 2026-06-25 09:14:01 +02:00
Marek FialaandCursor 57365fdfb4 docs(tools): update mcp-server docs for project_dir and create-project
- Server can now start from any directory, not just a valid project dir
- Document project_dir argument available on all tools
- Add create-project tool to the list of available tools

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-25 09:14:01 +02:00
2bb8dfe213 docs(jtag-debugging): add semihosting chapter
Co-authored-by: Shen Mengjing <shenmengjing@espressif.com>
Co-authored-by: Zhang Shu Xian <zhangshuxian@espressif.com>
2026-06-22 13:02:29 +02:00
Jiang Guang Ming 3fdf8eba84 docs(mbedtls): update docs with CONFIG_MBEDTLS_USE_CRYPTO_ROM_IMPL 2026-05-25 10:08:05 +08:00
Mahavir Jain 9dd7a89fde docs(esp_psram): mirror carve-out review-feedback updates in zh_CN
Mirror the recent EN-side updates in the Chinese External RAM guide:

- Replace "PSRAM 顶部" with "PSRAM 上端(最高物理地址区)" to match the
  clarified wording on the EN side.
- Add the verification-helper pointer next to the heap_caps_malloc
  example so Chinese readers also learn about esp_psram_ptr_is_no_enc().

Also drop the :cpp:func: cross-reference for esp_psram_ptr_is_no_enc on
the EN side: esp_psram.h is not in any chip-specific Doxyfile, so
Sphinx/Breathe cannot resolve the reference. Use a plain inline code
literal instead, matching the existing reference style for
esp_psram_get_size and other esp_psram functions in the docs.
2026-05-21 20:54:31 +05:30
Mahavir Jain 77e85b886a docs(esp_psram): clarify carve-out location is at upper end of PSRAM
The previous wording "top of PSRAM" was ambiguous: the carve-out is
actually mapped at the highest physical addresses of PSRAM (after the
rodata, text, and main heap mappings). Update the Kconfig help text for
SPIRAM_ENC_EXEMPT and SPIRAM_ENC_EXEMPT_SIZE, the External RAM
documentation, and the internal layout comment to say "upper end of PSRAM
(highest physical addresses)" instead.
2026-05-21 20:54:31 +05:30
Mahavir Jain ef7192fc73 feat(esp_psram): add esp_psram_ptr_is_no_enc() helper
Drivers that allocate from the unencrypted PSRAM carve-out via
MALLOC_CAP_SPIRAM_NO_ENC currently have no way to verify after the fact
which pool a buffer came from. This is particularly relevant for callers
using heap_caps_malloc_prefer(MALLOC_CAP_SPIRAM_NO_ENC, MALLOC_CAP_SPIRAM),
where a silent fallback to encrypted PSRAM would still pass the typical
esp_ptr_external_ram() check.

Expose esp_psram_ptr_is_no_enc() in the public esp_psram.h header. It
performs a range check against the carve-out's virtual-address window and
returns false when PSRAM is not initialized or CONFIG_SPIRAM_ENC_EXEMPT is
disabled, so callers do not need to guard the call site with #if.

Also reference the helper from the External RAM documentation alongside
the heap_caps_malloc(MALLOC_CAP_SPIRAM_NO_ENC) usage example.
2026-05-21 20:54:31 +05:30
Mahavir Jain 10d2d9cb9f docs(esp_psram): document MALLOC_CAP_SPIRAM_NO_ENC carve-out
Extends the External RAM encryption section to describe
CONFIG_SPIRAM_ENC_EXEMPT and the MALLOC_CAP_SPIRAM_NO_ENC heap
capability, including a security warning and a typical DMA-alignment
use case. Mirrors the change in zh_CN.
2026-05-21 20:54:30 +05:30
muhaidong e000bfd1b7 fix(doc): gate 5 GHz min-channel note on SOC_WIFI_SUPPORT_5G 2026-05-12 19:22:54 +08:00
muhaidong b565b34f3f fix(wifi): fix max connection number issue 2026-05-12 19:22:54 +08:00
Zhang Shuxian 744a55ac4a docs: Update CN translation for jtag-debugging 2026-05-11 12:17:00 +02:00
Samuel Obuch a363781a0a docs(jtag-debugging): update OpenOCD flashing documentation 2026-05-11 12:17:00 +02:00
Jiang Jiang Jian 6a18d93382 Merge branch 'docs/clarify_sdkconfig_defaults_example_v6.0' into 'release/v6.0'
docs: clarify how SDKCONFIG_DEFAULTS cache variable works (v6.0)

See merge request espressif/esp-idf!47189
2026-04-30 16:26:09 +08:00
Marius Vikhammer 430b404637 Merge branch 'fix/issue-18391-psram-default-docs_v6.0' into 'release/v6.0'
docs: clarify PSRAM default allocation behavior (v6.0)

See merge request espressif/esp-idf!47053
2026-04-29 11:22:07 +08:00
Martin Vychodil 193cb862a1 Merge branch 'docs/update_fatfs_config_docs_v6.0' into 'release/v6.0'
docs(storage/fatfs): Refactor fatfs docs (v6.0)

See merge request espressif/esp-idf!47188
2026-04-28 23:27:25 +08:00
Marius Vikhammer d11267de2b Merge branch 'docs/refresh-broken-links_v6.0' into 'release/v6.0'
docs: refresh broken documentation links (v6.0)

See merge request espressif/esp-idf!47493
2026-04-28 09:03:01 +08:00
Zhang Shuxian d01df69c75 docs: Update CN translation for idf-py 2026-04-27 22:04:34 +08:00
Marek Fiala 46cc126c50 feat(tools): Restrict loading extension components to trusted sources 2026-04-27 22:04:34 +08:00
Zhang Shuxian fbd1fab6b8 docs: Provide translation for configuration_structure.rst 2026-04-15 10:51:11 +02:00
Jan Beran 7b81b8e482 docs(kconfig): clarify how multiple renames work in sdkconfig.renames
Describe how multiple renames of one deprecated option to several new
options work.
2026-04-15 10:48:10 +02:00
Marius Vikhammer 2baddb3295 docs: refresh broken documentation links 2026-04-13 09:47:46 +08:00
Mahavir Jain 64c744abb7 docs: update PSRAM and flash encryption docs with per-page and separate key capabilities 2026-04-02 12:20:24 +05:30
renpeiying b6cb59f4fe docs: Add CN translation 2026-03-31 15:14:14 +02:00
Jan Beran 9f1cb88d2f docs: clarify how SDKCONFIG_DEFAULTS cache variable works 2026-03-31 15:14:14 +02:00
Tomáš Rohlínek 7601f9b829 docs(storage/fatfs): Refactor FatFs documentation
# Conflicts:
#	docs/en/api-reference/storage/fatfs.rst
2026-03-31 14:15:31 +02:00
Marius Vikhammer d09e551417 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-27 10:05:28 +08:00
Wei Yu Han 495d6ece74 fix(docs): Updated BLE features support status
(cherry picked from commit ad43685220)

Co-authored-by: Wei Yuhan <weiyuhan@espressif.com>
2026-03-22 12:41:45 +08:00
Sudeep Mohanty 700c86d0c9 fix(cmakev2): Defer idf_component_optional_requires linking to library build time
This commit introduces a new build property, __OPTIONAL_REQUIRES_MODE,
and uses it to either defer or link immediately, optional requirements
to components that request such linkage via the
idf_component_optional_requires() function in build system v2. The
DEFERRED mode is intended for single-binary projects where in the linking
of optional components happens after the library target is created the
dependency graph is available to the build system, thereby allowing it to
behave like the v1 version of the function.
2026-03-20 08:13:27 +01:00
Sudeep Mohanty a3d312a2fa docs(cmakev2): Added a section about component callback feature 2026-03-20 08:13:27 +01:00
Sudeep Mohanty dbb6887440 docs(cmakev2): Add a reference to cmakev2 examples README to the buildv2 API guide 2026-03-20 08:13:27 +01:00
Frantisek Hrbata ac3217a9e4 fix(cmakev2/compat): change idf_component_optional_requires behavior
The idf_component_optional_requires compatibility function in cmakev2
currently attempts to mimic the behavior of cmakev1 by adding a
dependency only if a component is already included in the build. In
cmakev1, this is handled by checking the BUILD_COMPONENTS list, which is
created during an early evaluation phase. Because cmakev2 removed this
early phase to allow for configuration-based component dependencies, the
build system does not inherently know which components will be part of
the build beforehand. To compensate, the current compatibility function
relies on the TARGET_EXISTS generator expression to determine if a
component should be linked.

This approach poses a problem because generator expressions are not
evaluated until the generation phase, but cmakev2 processes linker
scripts during the configuration phase by recursively scanning targets
linked to a library. Because the scanner does not recognize and cannot
evaluate generator expressions, any component linked optionally through
generator expression is skipped. If that component carries a linker
script, the script is never added to the library interface, resulting in
build failures. Since cmakev2 aims to support multiple libraries, a
component might also exist globally, causing TARGET_EXISTS to evaluate
to true, yet still be missed during a specific library's recursive scan,
leading to the same omission of necessary linker scripts.

To resolve this, the implementation of idf_component_optional_requires
is changed to check if a component is known to the build system in
COMPONENTS_DISCOVERED build property. If so, it is explicitly included
and linked directly via its interface target. While this may pull more
components into a build than the previous generator expression method,
potentially increasing build times, it ensures that dependency trees are
fully visible to the library target scanner. This serves as a practical
middle ground that maintains compatibility with existing components and
ensures build stability. This approach allows for the gradual fixing of
idf_component_optional_requires usage in components for cmakev2, with
the eventual goal of removing its usage in cmakev2 entirely.

This change also fixes cases where idf_component_optional_requires is
used to conditionally add requirements based on configuration options.
In cmakev2, the presence of a configuration option does not guarantee[1]
that a component has been included via add_subdirectory, unlike the
behavior in cmakev1. With this change even constructions like

```cmake
if(CONFIG_VFS_SUPPORT_IO)
    idf_component_optional_requires(PRIVATE vfs)
endif()
```

will now work in cmakev2, as the updated idf_component_optional_requires
explicitly includes the required component if it is available to the
build system.

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

[1] https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/build-system-v2.html#id9

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2026-03-20 08:13:26 +01:00
Jiang Jiang Jian 9368b3c1ba Merge branch 'docs/update_unit_test_v6.0' into 'release/v6.0'
docs: Add related documentation for unit test (v6.0)

See merge request espressif/esp-idf!46442
2026-03-20 10:41:02 +08:00
Jiang Jiang Jian c2dec1e7e2 Merge branch 'feature/update-openocd-to-v0.12.0-esp32-20260304_v6.0' into 'release/v6.0'
feat(tools): update openocd version to v0.12.0-esp32-20260304 (v6.0)

See merge request espressif/esp-idf!46363
2026-03-20 10:39:33 +08:00
Jiang Jiang Jian 37580eaf5d Merge branch 'fix/c61_wp_bp_nums_v6.0' into 'release/v6.0'
Fix number of available BPs/WPs for esp32c61 (v6.0)

See merge request espressif/esp-idf!46032
2026-03-20 10:35:51 +08:00
Jiang Jiang Jian ea413ed78b Merge branch 'fix/minimal_build_no_main_v6.0' into 'release/v6.0'
fix(build): ensure the main component exists when MINIMAL_BUILD is enabled (v6.0)

See merge request espressif/esp-idf!45915
2026-03-20 10:32:22 +08:00
Marius Vikhammer fc00a6d08f Merge branch 'docs/picolibc-is-default_v6.0' into 'release/v6.0'
docs: update picolibc as default C library, remove experimental references (v6.0)

See merge request espressif/esp-idf!46549
2026-03-20 09:21:33 +08:00
morris 3ae282f796 Merge branch 'change/deprecate_tcm_and_use_scp_v6.0' into 'release/v6.0'
tcm: deprecated tcm and added scp memory utils (v6.0)

See merge request espressif/esp-idf!46588
2026-03-19 23:34:57 +08:00
Roland Dobai bf9b086a5b Merge branch 'feat/split_hints_v6.0' into 'release/v6.0'
feat(tools): Extended `hints.yml` loading from components (v6.0)

See merge request espressif/esp-idf!45950
2026-03-19 14:54:17 +01:00
armando 45ec3b962b fix(spm): rename scp (scratchpad) to spm (scratchpad memory) 2026-03-18 09:49:59 +08:00
armando 1b85ad5081 change(mem): deprecated tcm and added scp memory utils 2026-03-18 09:49:59 +08:00
Marius Vikhammer cf6ab6c186 docs: update picolibc as default C library, remove experimental references
Made-with: Cursor
2026-03-12 16:44:31 +08:00
Samuel Obuch e1ef2ee724 docs(jtag-debugging): update program_esp parameters for new OpenOCD version 2026-03-12 08:48:16 +01:00
Shen Mengjing e6091afd31 docs: Update CN translation for idf-py.rst 2026-03-11 09:38:20 +01:00