Commit Graph
53291 Commits
Author SHA1 Message Date
Sudeep Mohanty ac527f3192 fix(test_apps/memprot): declare esp_hal_wdt as a private requirement of main
main/{esp32s2,esp32c3,esp32s3}/test_panic.c uses WDT registers from
esp_hal_wdt. Declare it explicitly so the build works under cmakev2's
strict component isolation.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty 658df32a06 fix(test_apps/gdb): declare spi_flash as a private requirement of main
main/hello_world_main.c uses spi_flash headers. Declare spi_flash in
PRIV_REQUIRES so the build works under cmakev2's strict component
isolation.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty 5600200a4c fix(bootloader_support): declare esp_security as a dependency for flash_encrypt
flash_encrypt.c is in the unconditional source list and includes
esp_security/esp_key_mgr.h whenever SOC_KEY_MANAGER_SUPPORTED is set.
Move the esp_security PRIV_REQUIRES declaration outside the
BOOTLOADER_BUILD branch so every build variant that compiles
flash_encrypt.c gets the dependency consistently.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty 5843b491a9 fix(host_test): use ${project_elf} variable and keyword link form
Three host_test CMakeLists.txt files relied on idioms tied to a
specific build system layout. Make them portable:

- spiffs/host_test and esp_partition/host_test/partition_api_test
  passed a hard-coded "<project>.elf" target name to add_dependencies().
  Use ${project_elf}, the canonical variable that resolves to the live
  executable target name in either build system.

- nvs_flash/host_test/nvs_page_test linked --coverage using the plain
  signature of target_link_libraries. CMake forbids mixing plain and
  keyword signatures on the same target; the component library link
  already uses the keyword form. Switch the --coverage link to the
  keyword signature.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty c6a57943e9 fix(esp_stdio): align VFS console force-link with the source-selection condition
stdio_vfs.c (the sole definition of esp_vfs_include_console_register)
is only added to the source list on non-Linux targets. The trailing
target_link_libraries(... -u esp_vfs_include_console_register) was
applied whenever CONFIG_VFS_SUPPORT_IO was enabled, including on the
Linux host build where the symbol is not part of the link. Constrain
the force-undef to the same condition that opts the defining source
in.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty 88c5eb6424 fix(hal): initialize priv_include to prevent scope leakage in cmakev2 2026-07-01 19:59:05 +08:00
Sudeep Mohanty 865512024c fix(dns_over_https): declare main and protocol_examples_common deps
dns_over_https/main includes time_sync.h, nvs_flash.h, esp_event.h,
esp_timer.h, and mbedtls headers. Declare nvs_flash, esp_event,
esp_timer, mbedtls and time_sync in PRIV_REQUIRES so the build is
self-describing under any build system.

Also move esp_netif from PRIV_REQUIRES to REQUIRES in
protocol_examples_common, since its public header exposes esp_netif.h.

Also add the PRIVATE keyword to target_link_libraries in the
dns_over_https component — CMake rejects mixed keyword/plain
signatures on the same target.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty a235a694b2 fix(esp_hal_sd): include <stddef.h> for offsetof in sdio_slave_hal.c
picolibc with C23 no longer exposes <stddef.h> implicitly through
other headers; add the explicit include for `offsetof`.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty 93b5785aba fix(bt): declare esp_event as a private requirement
bt sources include esp_wifi_types.h via esp_blufi_api.h, which
transitively includes esp_event_base.h from the esp_event component.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty 6c6030cdd7 fix(esp_wifi): declare interface deps in non-WiFi stub registration
Public headers (notably esp_wifi_default.h) include esp_event.h,
esp_netif.h and esp_phy.h. Declare these in REQUIRES so the headers
are visible to consumers — same interface as the WiFi-enabled
registration at the bottom of this file.

Also declare wpa_supplicant as PRIV_REQUIRES so the remote/ EAP
stubs can include esp_eap_client.h when the stub registration is
compiled.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty 93d4fad8b1 fix(esp_hw_support): use elif __riscv guard in spinlock.h
spinlock.h used #else to include riscv/rv_utils.h for all non-Xtensa
targets. On Linux host (neither __XTENSA__ nor __riscv defined), this
pulls in a non-existent header. Change to #elif __riscv, matching
esp_cpu.h's existing pattern.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty 08dd7ce19e fix(components): initialize srcs variable to prevent scope leakage 2026-07-01 19:59:05 +08:00
Sudeep Mohanty a0a3882897 fix(esp_libc/kconfig): exclude IDF_TARGET_LINUX from LibC menu
On the Linux target the host's C library is used directly; none of the
LibC menu options apply. Mark the entire "LibC" menu as `depends on
!IDF_TARGET_LINUX` so its symbols (LIBC_NEWLIB, LIBC_PICOLIBC, …) stay
undefined on Linux builds.

Also gate the picolibc-specific include in components/console/linenoise/
linenoise.c under `!CONFIG_IDF_TARGET_LINUX` so the file does not try to
pull <stdio-bufio.h> on the host even if CONFIG_LIBC_PICOLIBC is set by
some other build path.
2026-07-01 19:59:05 +08:00
Sudeep Mohanty ea4cef735a fix(esp_event/test): remove quotes around space-separated PRIV_REQUIRES list
The test app set priv_requires as a single quoted string ("esp_event unity")
instead of separate list items. The v1 build system silently splits on
spaces, but the v2 compat layer treats it as a single component name.
2026-07-01 19:59:05 +08:00
Jakub Kocka 3d35d528f8 fix(ci): Tolerate w32time already running on Windows CI VMs
net start w32time returns exit 2 on warm snapshots; that aborted before_script
before pytest. Continue with NTP config and w32tm /resync as intended.
2026-07-01 13:42:43 +02:00
harshal.patil 4e02ec217c test(mbedtls): move AES test vectors to a dedicated header 2026-07-01 16:51:30 +05:30
harshal.patil f5d68c1730 fix(mbedtls/aes): Fix AES-DMA over encrypted PSRAM on ESP32-S31
esp_crypto_shared_gdma_done() polled the AXI RX raw interrupt status
(in_done) but never cleared it, so after the first transfer the set bit
made every subsequent call return immediately without waiting.
2026-07-01 16:51:26 +05:30
Adam Múdry 758d17e1b8 test(vfs): Test changes regarding VFS register incorrect check fix 2026-07-01 12:06:13 +02:00
Adam Múdry f15011be4f fix(vfs): Fix __errno_r(__getreent()) correctness for Linux 2026-07-01 12:06:13 +02:00
renpeiying b75d565c35 udpate CN trans for hmac 2026-07-01 17:41:48 +08:00
Ashish Sharma 33cb603e02 fix(mbedtls/port): add additional hardening for PSA drivers 2026-07-01 17:41:48 +08:00
harshal.patil b5d16d86dc fix(mbedtls/port): align ESP PSA hardware drivers with software references
Audited every esp_* PSA driver against its corresponding software driver in
mbedtls/library (psa_crypto_cipher.c, psa_crypto_aead.c, psa_crypto_mac.c,
psa_crypto_hash.c, psa_crypto_ecp.c, psa_crypto_rsa.c) and fixed gaps in
workflow ownership, error-path cleanup, sensitive-data wiping, and BAD_STATE
gating per the PSA Crypto API spec.

esp_aes (cipher): fix padding oracle in cipher_finish by replacing leaky
branches with mbedtls_ct_* primitives; abort wipes the driver-level ctx,
not just the inner mbedtls_aes_context; setup routes errors through abort.

esp_aes_gcm (AEAD): zeroize the 16-byte full_tag scratch; restore the
*output_length = finish_output_size assignment that the SW reference keeps
for future ciphers; NULL the inner ctx pointer after free in abort; gate
update/finish on a live ctx with PSA_ERROR_BAD_STATE.

esp_ecdsa: keep abort-at-exit in the one-shot wrappers so the stack-copy
of the hash (needed for little-endian byte order on HW) is wiped per
PSA spec 6.3.3, drop the over-defensive public-key qx/qy wipes that the
SW driver does not perform.

esp_cmac / esp_hmac_transparent / esp_hmac_opaque (MAC): make abort
idempotent, route setup errors through abort, gate update/finish/
verify_finish on PSA_ERROR_BAD_STATE, wipe M_last and intermediate hmac[]
buffers on completion or HW failure. HMAC opaque gains alg + computed
fields to mirror the SW psa_crypto_mac.c state machine. HMAC transparent
explicitly aborts the inner SHA context before reusing it for the outer
hash.

esp_sha: switch the per-op live indicator to (sha_ctx != NULL) so the
public esp_sha_operation_type_t enum keeps its original ordinal values;
free + NULL sha_ctx on every error path; gate update/finish/clone on a
live ctx; wipe per-algorithm core/parallel-engine scratch buffers
(W[], A[], state) on HW-engine failure.

esp_md5: replace bare memset in abort with mbedtls_platform_zeroize.

esp_rsa_ds: complete() no longer frees sig_buffer (abort owns that);
start() routes failures through abort; asymmetric_decrypt funnels all
cleanup through a single exit: label. RSA-DS utilities wipe the
decrypted-plaintext scratch on v15 / OAEP unpad failure.
2026-07-01 17:41:48 +08:00
sonika.rathi 3eb7a298ec fix(fatfs): avoid stack overflow in BDL diskio partition test 2026-07-01 10:40:32 +02:00
harshal.patil dd84cd7f10 fix(panic): handle absent IROM/DROM alignment gap in spiram-xip memprot tests
The spiram-xip IROM/DROM alignment tests assumed the XIP region always
leaves an alignment gap before the next MMU page: they executed into the
gap and expected an instruction access fault followed by a register dump.
When the section ends exactly on an MMU page boundary there is no gap - the
device prints "<IROM/DROM> alignment gap not added into heap" and returns,
the framework restarts cleanly (esp_restart_noos, no panic), and the test
timed out waiting for a register dump.
2026-07-01 10:59:50 +05:30
Liu Linyan ec4aa2fa75 fix(ble_iso): Fix null dereference may happened during BIG/CIG creation 2026-07-01 11:59:45 +08:00
Shuai Wang 0ab5a90137 fix(nimble): initialize return value in LED characteristic access callback
When the NimBLE stack called this callback for a GATT Write Request, the
uninitialized stack value was interpreted as a non-zero GATT error code,
causing the stack to send BLE_ATT_ERR_UNLIKELY (0x0E) back to the client.
2026-07-01 11:54:58 +08:00
Linyan Liu 5aa4edacdb fix(ble_iso): Fix ISO SDU header pulled without minimum length check 2026-07-01 11:52:34 +08:00
Zhou Xiao 89a4da5083 change(ble): [AUTO_MR] Update lib_esp32c6 to a6519790
(cherry picked from commit 226a0483b1)

Co-authored-by: Zhou Xiao <zhouxiao@espressif.com>
2026-07-01 10:35:37 +08:00
Zhou Xiao 9af79c18e3 change(ble): [AUTO_MR] Update lib_esp32c5 to a6519790
(cherry picked from commit a43358587c)

Co-authored-by: Zhou Xiao <zhouxiao@espressif.com>
2026-07-01 10:35:37 +08:00
Zhou Xiao 4e625df6ec change(ble): [AUTO_MR] Update lib_esp32h2 to a6519790
(cherry picked from commit 8a744e8e93)

Co-authored-by: Zhou Xiao <zhouxiao@espressif.com>
2026-07-01 10:35:36 +08:00
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 f71890ccec Merge branch 'bugfix/ai_review_btu_common_v6.1' into 'release/v6.1'
fix: Fix the critical issues of btu and bt_common from AI review report (v6.1)

See merge request espressif/esp-idf!50121
2026-06-30 17:37:34 +08:00
Liu Linyan 9b415a7d1f feat(ble_audio): Support Zephyr LE Audio v4.4.1 2026-06-30 15:17:24 +08:00
yinqingzhao 5e3d5f8303 fix(wifi): fix tx issues introduced by keeping alive optimization 2026-06-30 15:13:36 +08:00
yinqingzhao e08a582209 fix(wifi): comment out functions from ld files 2026-06-30 15:13:26 +08:00
sonika.rathi ddd4e7c3a3 fix(fatfs): re-enable fatfs and vfs psram/ccomp CI tests 2026-06-30 09:09:58 +02:00
igor.udot 183273899f ci: skip h21 for coex_unit_test 2026-06-30 14:58:42 +08:00
zhangyanjiao 525928eee6 fix(wifi): added start check when calling smartconfig stop 2026-06-30 14:57:57 +08:00
Akshat Agrawal 6a22a21687 Remove hardcoded GSP subattributes 2026-06-30 14:57:04 +08:00
Akshat Agrawal 2151a0003f Fix unwanted encryption of NAFs 2026-06-30 14:56:55 +08:00
Nachiket Kukade 478be42bd1 feat(nan): Add aes_wrap/unwrap crypto callbacks
- Use crypto callbacks instead of calling internal API's
- Clean up of unused code, flags. Re-arrange functions
2026-06-30 14:56:45 +08:00
Akshat Agrawal 7475e1bced Address review comments VNC 2026-06-30 14:56:35 +08:00
Akshat Agrawal ff5df2e245 Address review comments and fix build errors 2026-06-30 14:56:26 +08:00
Akshat Agrawal 8a69a08567 fix(nan): Add service hash to NVS to maintain pairing states after reset 2026-06-30 14:56:18 +08:00
Akshat Agrawal fb56779fd1 Change the NIRA verification logic 2026-06-30 14:56:10 +08:00
Akshat Agrawal f3c2ff4019 fix(nan): Disable/Enable Pairing setup bit based on NIK stored in NVS
- Only send pairing followup only if nik caching is enabled
2026-06-30 14:56:00 +08:00
Nachiket Kukade ebf7dc9b31 feat(nan): persist NIK/NPK credentials in NVS
Replace nik/nik_valid in wifi_nan_sync_config_t with reset_current_nvs_creds
and use_nvs_for_caching. On NAN start, load the saved own NIK and peer
credentials from NVS (or erase them when reset is requested); generate and
persist a fresh own NIK only when none is valid and caching is enabled.

PASN reuses the SAE module (PWE/crypto and the comeback-token mechanism),
so define CONFIG_SAE whenever SoftAP-SAE or PASN is enabled. This fixes the
undefined references to check_comeback_token()/auth_build_token_req() when
SOFTAP config is disabled.
2026-06-30 14:55:51 +08:00
Nachiket Kukade e70033e6a7 refactor(nan): consolidate NIRA construction into esp_nan_construct_nira 2026-06-30 14:55:39 +08:00
Akshat Agrawal e9c4cfa0a5 Add pairing followup timeout and post CONFIRM Failure 2026-06-30 14:55:30 +08:00