Commit Graph

8326 Commits

Author SHA1 Message Date
Aditya Patwardhan
3e6429e881 fix(esp-tls): Keep deprecated use_secure_element field for compatibility
Restore the use_secure_element field in esp_tls_cfg_t, esp_tls_cfg_server_t
and httpd_ssl_config_t, and esp_transport_ssl_use_secure_element(), as
deprecated no-ops so that existing code keeps compiling. Setting them now
fails at runtime with ESP_ERR_NOT_SUPPORTED, as the feature is accessed
via the esp_key_config_t interface. To be removed in the next major release.

No compile-time deprecation attribute on this release branch; the field and
function stay warning-free here and carry only documentation notes.
2026-07-15 15:34:17 +05:30
Aditya Patwardhan
72b2e4f4fd fix(esp-tls): address MR review comments for SE PSA driver
- esp_tls_mbedtls: require cert when PSA-backed server/client key is set
- esp_tls_mbedtls: drop redundant pk_init/x509_crt_init (calloc handles it)
- psa SE driver: copy callbacks/opaque_key by value (no lifetime coupling)
- psa SE driver: replace atomic CAS with simple null check on register
- psa SE driver: use sig_len from sign callback with bounds validation
- psa SE driver: validate pubkey_len returned by export_pubkey callback
- psa SE driver: check hash sub-alg in RSA PKCS1V15 branch of validate_request
- psa SE driver: align secure_element_register_callbacks doc with value-copy impl
- esp_https_server: initialize server_key in HTTPD_SSL_CONFIG_DEFAULT
- mbedtls: move SECURE_ELEMENT_DRIVER_ENABLED to esp_config.h for parity
  with ESP_ECDSA_DRIVER_ENABLED; drop target_compile_definitions
- docs: fix esp_tls_cfg_t -> esp_http_client_config_t cross-reference
- docs: check psa_import_key() status in ESP-TLS PSA example
- hints/error_output: point at CONFIG_MBEDTLS_SECURE_ELEMENT_DRIVER_ENABLED

(cherry picked from commit 08b567ef3b)
2026-07-02 11:41:49 +05:30
Aditya Patwardhan
b6947348c6 docs(esp-tls): Update documentation for unified key interface and SE driver
Update esp_tls, esp_http_client docs and migration guide to reflect
the new esp_key_config_t interface and secure element PSA driver.

(cherry picked from commit 37808e2386)
2026-07-02 11:41:49 +05:30
Aditya Patwardhan
a35e056816 feat(mbedtls): Add PSA Crypto driver for external secure elements
Add generic secure element PSA driver with runtime callback registration.
Consolidate Kconfig into single MBEDTLS_SECURE_ELEMENT_DRIVER_ENABLED option.

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

(cherry picked from commit 1c20f525b4)
2026-07-02 11:41:48 +05:30
Mahavir Jain
c9bdb79314 Merge branch 'docs/add_ws_post_handshake_cb_doc_v6.1' into 'release/v6.1'
docs(esp_http_server): adds doc and migration entry for ws server post handshake cb (v6.1)

See merge request espressif/esp-idf!49336
2026-07-01 20:47:10 +05:30
morris
9583d6df06 Merge branch 'feat/async_color_converter_v6.1' into 'release/v6.1'
feat(esp_driver_dma): add async color convert driver (v6.1)

See merge request espressif/esp-idf!49747
2026-07-01 10:22:42 +08:00
Jiang Jiang Jian
cf515d20d7 Merge branch 'feat/support_usb_wakeup_v6.1' into 'release/v6.1'
feat: support usb as wakeup source from light sleep (v6.1)

See merge request espressif/esp-idf!49497
2026-06-30 19:40:33 +08:00
Jiang Jiang Jian
554e88416f Merge branch 'feat/mcp_server_accept_project_dir_v6.1' into 'release/v6.1'
feat(tools): mcp-server accepts project_dir from chat (v6.1)

See merge request espressif/esp-idf!50032
2026-06-30 14:20:47 +08:00
Jiang Jiang Jian
090b0660c3 Merge branch 'docs/add_semihosting_chapter_v6.1' into 'release/v6.1'
docs(jtag-debugging): add semihosting chapter (v6.1)

See merge request espressif/esp-idf!49887
2026-06-30 14:17:56 +08:00
Jiang Jiang Jian
0cbf614bda Merge branch 'idf/ble_audio_docs_misc_update_v6.1' into 'release/v6.1'
docs(ble_audio): Adopt SIG product name and add LE Audio API guide entry (v6.1)

See merge request espressif/esp-idf!49774
2026-06-30 14:15:05 +08:00
Mahavir Jain
10f9230dfb Merge branch 'fix/sb_digest_revocation_workflow_v6.1' into 'release/v6.1'
change(bootloader): honor SECURE_BOOT_ALLOW_UNUSED_DIGEST_SLOTS during first boot (v6.1)

See merge request espressif/esp-idf!49712
2026-06-30 10:02:46 +05:30
morris
caf09a3c97 feat(dma2d): support RGB24 and BGR24 scramble conversion
Add async color convert coverage for direct RGB24/BGR24 byte-order swaps
and
thread both TX and RX CSC state through DMA2D transactions for future
extensibility.
2026-06-30 11:51:40 +08:00
morris
ac5fcd73ef docs(dma2d): added async color convert programming guide 2026-06-30 11:51:40 +08:00
morris
1660ff9993 Merge branch 'fix/twaifd_assert_fail_v6.1' into 'release/v6.1'
fix(driver_twai): fix driver assert fail when send frame (v6.1)

See merge request espressif/esp-idf!49939
2026-06-30 11:25:35 +08:00
morris
19249ab573 Merge branch 'refactor/jpeg_encoder_example_v6.1' into 'release/v6.1'
feat(jpeg): simplify encode example and add pytest coverage (v6.1)

See merge request espressif/esp-idf!50139
2026-06-30 11:17:08 +08:00
morris
c2db07dcaa feat(jpeg): simplify encode example and add pytest coverage
Embed a 720p BGR raw asset and stream the encoded JPEG over UART so
this example no longer depends on SD card setup.

Add pytest coverage that reconstructs the JPEG from base64 output and
compares it against a checked-in golden image.
2026-06-29 17:26:08 +08:00
JiangGuangMing
b7ce090780 feat(docs): update docs for usb wakeup from light sleep example
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 16:08:35 +08:00
Zhang Shuxian
82e560b18c docs: Update CN translation for idf-py.rst 2026-06-25 09:13:50 +02:00
Marek Fiala
20e426ccfe 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:13:50 +02:00
wanckl
de63f3978b feat(driver_twai): add prioritized TX queue support 2026-06-23 20:18:04 +08:00
morris
ea3e823755 fix(sdio_slave): align buffer size checks with descriptor limits
Define per-target SDIO slave descriptor buffer limits in the LL layer and validate queued send buffers against the 4-byte aligned effective maximum. Update the public docs to describe the chip-dependent limit instead of hardcoding 4092 bytes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 23:19:43 +08:00
Samuel Obuch
6ddbc96d97 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:01:11 +02:00
Liu Linyan
a701c91cb0 docs(ble_audio): Adopt SIG product name and add LE Audio API guide entry 2026-06-17 19:09:43 +08:00
Mahavir Jain
b08669af99 change(bootloader): honor SECURE_BOOT_ALLOW_UNUSED_DIGEST_SLOTS during first boot
Previously the bootloader unconditionally revoked unused secure boot key
digest slots while permanently enabling secure boot on the first boot,
ignoring CONFIG_SECURE_BOOT_ALLOW_UNUSED_DIGEST_SLOTS. Now the config is
honored on this path too: when set, the unused digest slots are left
un-revoked. This is safe as long as the debug and download interfaces are
disabled.

Update the Kconfig help and the Secure Boot v2 guide (en and zh_CN)
accordingly.
2026-06-16 13:29:49 +05:30
Mahavir Jain
4e09adff8d docs(security): fix typos in security guides
- security.rst: remove duplicated word in OTA encryption note
- tee.rst: remove duplicated word in memory allocation note
- flash-encryption.rst: drop redundant phrase and fix subject-verb agreement
2026-06-16 13:29:49 +05:30
Jiang Jiang Jian
6d7fde3e05 Merge branch 'feat/esp_trace_example_v6.1' into 'release/v6.1'
esp_trace example library integration (v6.1)

See merge request espressif/esp-idf!49089
2026-06-13 23:39:22 +08:00
Jiang Jiang Jian
e4f18caa91 Merge branch 'bugfix/int_wdt_default_psram_v6.1' into 'release/v6.1'
fix(iwdt): increased default timeout if using PSRAM (v6.1)

See merge request espressif/esp-idf!49480
2026-06-13 15:28:33 +08:00
Hu Rui
ef674eddd3 fix(touch): enable touch deep sleep on esp32-s31 2026-06-12 18:05:25 +08:00
Jiang Jiang Jian
9b120a0925 Merge branch 'idf/ble_audio_arch_doc_v6.1' into 'release/v6.1'
docs(ble_audio): Add documents for introducing ISO & LE Audio architectures (v6.1)

See merge request espressif/esp-idf!49536
2026-06-12 17:10:18 +08:00
Mahavir Jain
7678f3570d Merge branch 'feat/adds_ds_qemu_test_v6.1' into 'release/v6.1'
feat: adds mutual auth example (v6.1)

See merge request espressif/esp-idf!49340
2026-06-11 10:26:59 +05:30
Liu Linyan
8ffb543127 docs(ble_audio): Add documents for introducing ISO & LE Audio architectures 2026-06-10 19:44:33 +08:00
Mahavir Jain
3664bd2d7e Merge branch 'fix/disable_secure_boot_v2_ecdsa_v6.1' into 'release/v6.1'
Fix/disable secure boot v2 ecdsa (v6.1)

See merge request espressif/esp-idf!49469
2026-06-10 14:39:06 +05:30
Jiang Jiang Jian
895974c34d Merge branch 'feat/enable_sb_and_fe_support_for_esp32s31_v6.1' into 'release/v6.1'
feat: enable Secure Boot, Flash Encryption and Key Manager support in ESP32S31 (v6.1)

See merge request espressif/esp-idf!49161
2026-06-10 11:13:43 +08:00
Jiang Jiang Jian
9a4d018e0a Merge branch 'fix/heap-minimum-free-size_v6.1' into 'release/v6.1'
fix(heap): Do not consider newly registered heap in minimum free size calculation (v6.1)

See merge request espressif/esp-idf!49035
2026-06-10 11:08:03 +08:00
Marius Vikhammer
1db2e04c21 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-10 10:20:50 +08:00
Aditya Patwardhan
4f2f37ca69 change(secure_boot): mark ECDSA based Secure Boot V2 as insecure on affected SoCs
ECDSA based Secure Boot V2 is not functional for certain input vectors on
ESP32-C5/C61/H2/P4 and on the preview targets ESP32-H4/H21. RSA based Secure
Boot V2 is the recommended scheme where the SoC supports it. This issue will be
fixed in a future hardware ECO revision; more details will be shared through the
hardware errata document.

A new hidden Kconfig option SECURE_BOOT_V2_ECDSA_INSECURE marks the affected
mass-production SoCs (ESP32-C5/C61/H2/P4). On these SoCs, when hardware Secure
Boot V2 is enabled, the ECDSA (V2) signing scheme is no longer offered by
default; it must be turned on explicitly via SECURE_BOOT_V2_FORCE_ENABLE_ECDSA
under "Allow potentially insecure options" (CONFIG_SECURE_BOOT_INSECURE). App
signing without hardware Secure Boot is not affected. Note that ESP32-C61 has no
RSA based Secure Boot V2, so it has no Secure Boot scheme enabled by default.

The preview targets ESP32-H4 and ESP32-H21 mark ECDSA Secure Boot V2 as not
supported in their SoC capabilities instead of using the option above. As
ESP32-H4 has no other Secure Boot V2 scheme, Secure Boot is disabled entirely on
it; ESP32-H21 retains RSA based Secure Boot V2.

The security documentation keeps the ECDSA Secure Boot V2 content visible and
adds a warning describing the limitation (including that ECDSA Secure Boot V2 on
ESP32-C61 is not recommended for production). CI apps that exercise ECDSA Secure
Boot V2 on the affected SoCs set CONFIG_SECURE_BOOT_V2_FORCE_ENABLE_ECDSA
accordingly.
2026-06-10 03:10:27 +05:30
hebinglin
5ff1c38cb8 fix(ulp): fix lp uart keep wakeup triggered 2026-06-08 19:29:53 +08:00
Ashish Sharma
d7ec6e0db0 feat(esp_http_client_mutual_auth): add mutual TLS example
Closes https://github.com/espressif/esp-idf/issues/18393
2026-06-05 17:32:09 +08:00
Zhang Shuxian
d81a432a01 docs: Update CN translation for protocols.rst 2026-06-05 17:31:32 +08:00
Ashish Sharma
9c15f8e7d9 docs(esp_http_server): adds doc and migration entry for ws server post handshake cb
Closes https://github.com/espressif/esp-idf/issues/18539
2026-06-05 17:31:32 +08:00
morris
7fd1e25294 Merge branch 'bugfix/async_crc_timeout_v6.1' into 'release/v6.1'
fix(async_crc): limit blocking timeout support (v6.1)

See merge request espressif/esp-idf!49242
2026-06-04 22:40:02 +08:00
morris
cc82ece46a Merge branch 'feat/update_jpeg_performance_v6.1' into 'release/v6.1'
doc(jpeg): Update jpeg performance on esp32s31 (backport v6.1)

See merge request espressif/esp-idf!49252
2026-06-04 12:16:31 +08:00
morris
cbc91b4616 Merge branch 'docs/i2s_pm_description_v6.1' into 'release/v6.1'
docs(i2s): correct power lock management description (v6.1)

See merge request espressif/esp-idf!49126
2026-06-04 11:15:33 +08:00
morris
9d444910bd Merge branch 'fix/fix_mipi_lcd_dirty_buffer_v6.1' into 'release/v6.1'
feat(lcd): support buffer switch interrupt (v6.1)

See merge request espressif/esp-idf!49100
2026-06-04 11:09:11 +08:00
C.S.M
594537c475 doc(jpeg): Update jpeg performance on esp32s31 2026-06-04 10:45:15 +08:00
morris
2b9277f30d fix(async_crc): limit the blocking API only accept infinite timeout
also support user configured interrupt priority
2026-06-03 19:00:29 +08:00
nilesh.kale
ae1ec76e82 feat: enable Secure Boot, Flash Encryption and Key Manager support for S31 2026-06-02 13:09:44 +05:30
morris
2b36e6308a docs(ldo): corrected the LDO channel numbers in the programming guide 2026-06-02 14:51:17 +08:00
Chen Chen
0cb3ef8b1e docs(i2s): correct power lock management description
Closes https://github.com/espressif/esp-idf/issues/18655
2026-06-02 09:25:38 +08:00
Chen Jichang
f17bc5d033 feat(lcd): support buffer switch interrupt 2026-06-01 18:28:50 +08:00