Commit Graph
49 Commits
Author SHA1 Message Date
Chen Jichang 8cb3743b7c ci(esp32h4): disable h4 build and target test on unsupported release branch 2026-09-07 15:48:11 +08:00
wuzhenghui 0f5ec4d261 feat(esp_security): support s31 security clock management 2026-09-02 19:20:15 +08:00
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
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 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
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
Ashish Sharma 35227e41e9 fix(esp_hal_security): clamp tag_len in aes_hal_gcm_read_tag to prevent OOB 2026-07-13 14:40:44 +08:00
nilesh.kale c9e90831b8 feat: enable AES GCM support for ESP32-S31 2026-07-06 15:08:38 +05:30
harshal.patil 0c2ebe3180 fix(secure_boot): range-check ECDSA r,s in bootloader before ROM verify 2026-06-16 10:38:59 +05:30
Mahavir Jain d460486ab4 Merge branch 'fix/ecdsa_ecc_hw_input_validation_v6.1' into 'release/v6.1'
Validate ECDSA signature range and harden ECC memory power-down (v6.1)

See merge request espressif/esp-idf!49427
2026-06-10 14:39:49 +05:30
harshal.patil 6bdaf2a293 fix(soc): Remove non-existent crypto registers (ESP32-C61) 2026-06-09 18:16:33 +05:30
harshal.patil 7984290258 test(esp_hal_security): warm up ECC const-time loop before measuring 2026-06-09 18:12:05 +05:30
harshal.patil beb13babca fix(mbedtls): validate ECDSA signature range and harden ECC memory power-down 2026-06-09 14:58:59 +05:30
Konstantin Kondrashov 7dab1d313e Merge branch 'feature/efuse_esp32h21' into 'master'
feat(efuse): Update efuse table for ESP32H21

Closes IDF-11556

See merge request espressif/esp-idf!48762
2026-05-22 09:39:18 +03:00
Konstantin Kondrashov f870ed9d61 feat(efuse): Update efuse table for ESP32H21 2026-05-21 16:29:09 +03:00
Laukik Hase 4c39f0d006 ci(hal): Extend support for ESP32-P4 for the PMS HAL test-app 2026-05-21 13:42:18 +05:30
Laukik Hase 3acb4a3e0c refactor(hal): Refactor and update the ESP32-P4 APM LL/HAL APIs 2026-05-21 12:15:50 +05:30
nilesh.kale 34e24e1ed3 fix: disable Key Manager and ECDSA TRNG tests for S31 temporarily 2026-05-20 10:17:34 +05:30
nilesh.kale a530aab0a6 feat: enable key manager and HUK support for S31 2026-05-20 10:17:34 +05:30
Aditya PatwardhanandNilesh Kale e1d429ba30 feat(hal): add ECDSA low-level driver for esp32s31
Co-authored-by: Nilesh Kale <nilesh.kale@espressif.com>
2026-05-20 10:17:34 +05:30
Aditya PatwardhanandNilesh Kale e9a9091b59 feat(hal): add HMAC and Digital Signature support for esp32s31
Co-authored-by: Nilesh Kale <nilesh.kale@espressif.com>
2026-05-20 10:17:34 +05:30
nilesh.kale f400c78d42 feat(hal): enable ecdsa support in esp32h4 2026-05-12 15:26:17 +05:30
nilesh.kale b9a394e75e feat(hal): enabled ecc p-384 support for esp32h4 2026-05-12 15:19:32 +05:30
muhaidong 14e964c0fa fix(esp_security): fix ECDH1 key manager multi-stage helper 2026-05-11 12:03:17 +05:30
Mahavir Jain bc8db060f1 Merge branch 'feat/key_manager_ecdh1_key_deployment_mode' into 'master'
Key Manager ECDH1 key deployment mode

Closes IDF-15582

See merge request espressif/esp-idf!47988
2026-05-11 09:03:10 +05:30
harshal.patil 9aba184c43 feat(esp_security): add ECDH1 deployment mode to Key Manager driver 2026-04-30 09:29:40 +05:30
harshal.patil 8ce8d8919b fix(esp_security): Enable ECC clock while using the Key Manager's ECDH key deployment mode 2026-04-30 09:17:31 +05:30
harshal.patil 8bfc4f7255 fix(esp_security): guard key manager APIs against unsupported chip revs
On ESP32-P4 rev < 3.0, Key Manager is software-disabled, but the public
esp_key_mgr.h APIs had no runtime check.
Calls using HMAC/DS/PSRAM key types fell through to
HAL_ASSERT("Unsupported ...") paths in key_mgr_ll.h. Gate
each public API with key_mgr_ll_is_supported() and return
ESP_ERR_NOT_SUPPORTED cleanly instead.
2026-04-27 15:18:34 +05:30
Mahavir Jain 80116d4e07 Merge branch 'feat/add_hmac_support_for_esp32h4' into 'master'
feat: added support for HMAC in ESP32H4

Closes IDF-12257

See merge request espressif/esp-idf!44647
2026-04-15 15:18:03 +05:30
Aditya PatwardhanandNilesh Kale bfd3e191bc feat: enable AES, SHA, RSA and ECC support for ESP32S31
Co-authored-by: Nilesh Kale <nilesh.kale@espressif.com>
2026-04-13 10:20:44 +05:30
nilesh.kale b3243dc6de feat: enable HMAC peripheral support for ESP32-H4 2026-04-09 14:29:57 +05:30
harshal.patil ccc48c3980 fix(esp_security): Fixes incorrect key manager configuration for ESP32-P4 rev < 3 2026-03-24 15:23:23 +05:30
Ashish Sharma dc7843b954 fix(esp_hal_security): fixes failing hmac_hal_configure with efuse_key for p4 rev < 3
Closes https://github.com/espressif/esp-idf/issues/18370
2026-03-24 15:23:23 +05:30
Chen Jichang f3feaeabb6 fix(lp_dma): add lp dma clk ctrl on s31 2026-03-23 16:40:47 +08:00
harshal.patil 0db717b9ec feat(esp_ds): Support using the AES key used by DS peripheral for encrypting params 2026-03-20 11:15:23 +05:30
harshal.patil 5f647c0ba3 docs(key-manager): Add Key-Manager peripheral related documentation 2026-03-18 16:27:39 +05:30
Evgeny Torbin d0f062c018 ci: remove unused test cases 2026-03-12 12:02:10 +01:00
Laukik Hase 99f6d7cd56 ci(hal): Enable the TEE-based interrupt test-cases for ESP32-P4 2026-02-18 11:46:15 +05:30
Chen Chen eeb24057c4 refactor(hal): graduate systimer hal driver into esp_hal_systimer 2026-02-06 18:08:57 +08:00
Ashish Sharma e06a7dd791 feat: adds new Kconfig variable for DS peripheral 2026-02-05 10:12:25 +08:00
Ashish Sharma 1d185a6548 feat: adds PSA DS driver support 2026-02-05 10:12:25 +08:00
Marius Vikhammer 79950e4783 docs(esp32s31): add support for building docs for esp32s31 2026-01-28 09:42:24 +08:00
igor.udot 4c26ab876b ci: update build-test-rules to use common_components 2026-01-23 10:14:09 +08:00
morris 35bdd8c651 feat(dma): graduate the dma driver from esp_hw_support to esp_driver_dma 2026-01-22 14:14:14 +08:00
Aditya Patwardhan f82bc04f8a fix(hal/huk): Add missing break statements in switch cases for ESP32-C5 2026-01-21 10:02:47 +05:30
Aditya Patwardhan 4ca334d3a7 fix(docs): Fix docs after esp_hal_security update 2026-01-21 10:02:47 +05:30
Aditya Patwardhan eb4a871eca refactor(esp_hal_security): Updated esp_hal_security build and includes 2026-01-21 10:02:44 +05:30
Aditya Patwardhan 5ee7af3afd refactor(hal): Created esp_hal_security for security code 2026-01-21 09:59:46 +05:30