Commit Graph
37282 Commits
Author SHA1 Message Date
Jiang Jiang Jian 1dfc7914b5 Merge branch 'fix/esp_idf_h4h21_ana_wait_short_v6.1' into 'release/v6.1'
fix(esp_hw_support): fix xtal unstable when carry 154 and ble cases(v6.1)

See merge request espressif/esp-idf!50656
2026-07-16 11:40:13 +08:00
Jiang Jiang Jian 8f45ea4dcb Merge branch 'cleanup/remove-idf_test-component_v6.1' into 'release/v6.1'
chore: remove unused idf_test component (v6.1)

See merge request espressif/esp-idf!50650
2026-07-16 11:39:15 +08:00
Jiang Jiang Jian b78543ddb8 Merge branch 'fix/touch_read_check_v6.1' into 'release/v6.1'
fix(touch): fix hw_ver1 read data check (v6.1)

See merge request espressif/esp-idf!50638
2026-07-16 11:39:06 +08:00
Jiang Jiang Jian 21390d2e00 Merge branch 'refactor/move_regdma_entry_config_to_driver_layer_emac_v6.1' into 'release/v6.1'
refactor(emac): move sleep retention config into driver layer (v6.1)

See merge request espressif/esp-idf!50619
2026-07-16 11:36:38 +08:00
Jiang Jiang Jian 6005d5bb6a Merge branch 'fix/lwip_sec_high_v6.1' into 'release/v6.1'
fix(lwip): high severity lwip fixes (v6.1)

See merge request espressif/esp-idf!50590
2026-07-16 11:35:55 +08:00
Jiang Jiang Jian b3f2e9e67b Merge branch 'fix/uhci_rx_fsm_v6.1' into 'release/v6.1'
fix(uhci): rx fsm race condition (v6.1)

See merge request espressif/esp-idf!50577
2026-07-16 11:35:38 +08:00
Jiang Jiang Jian 64218b5dd3 Merge branch 'bugfix/smp_sec_flags_v6.1' into 'release/v6.1'
fix(bt/bluedroid): fixed several security issues from NVIDIA (v6.1)

See merge request espressif/esp-idf!50565
2026-07-16 11:35:17 +08:00
Jiang Jiang Jian 8346b7596e Merge branch 'feat/sec_esp_drivers_v6.1' into 'release/v6.1'
fix(drivers): harden multiple peripheral drivers against local DoS and memory corruption (v6.1)

See merge request espressif/esp-idf!50555
2026-07-16 11:33:01 +08:00
Jiang Jiang Jian 78519ced02 Merge branch 'feat/update_openthread_submodule_and_br_lib_20260624_v6.1' into 'release/v6.1'
feat(openthread): update openthread submodule (v6.1)

See merge request espressif/esp-idf!50518
2026-07-16 11:30:55 +08:00
yangfeng 24369a6f81 fix(bt/bluedroid): Fix unchecked p_ctrl_cback and p_msg_cback in AVRC
Closes SEC-1186
2026-07-16 11:30:38 +08:00
yangfeng e8108fefe1 fix(bt/bluedroid): Fix missing NULL check on p_cfg in AVDT_ReconfigReq
Closes SEC-1187
2026-07-16 11:30:38 +08:00
Li Shuai 4b8e1e8710 change(esp_pm): add kconfig option for REGDMA sleep clock ICG 2026-07-16 11:30:14 +08:00
Sarvesh Bodakhe faaaea8e67 fix(wpa_supplicant): guard pbkdf2_sha256 for PSA-provided SHA-256
mbedtls 4.x is PSA-first: CONFIG_MBEDTLS_SHA256_C now maps to
PSA_WANT_ALG_SHA_256, and on ESP targets the hardware SHA accelerator
serves SHA-256 through PSA, leaving the legacy MBEDTLS_SHA256_C builtin
macro undefined. The inner guard on pbkdf2_sha256 was gating on bare
MBEDTLS_SHA256_C, so the function was compiled out and NAN ND-PMK
derivation (nan_derive_nd_pmk_from_passphrase) failed to link.

Guard on (MBEDTLS_SHA256_C || PSA_WANT_ALG_SHA_256) to match the idiom
already used elsewhere in the supplicant mbedtls port (tls_mbedtls.c),
covering both the legacy builtin and PSA-provided SHA-256.
2026-07-16 11:29:29 +08:00
Jiang Jiang Jian 5595996fe8 Merge branch 'feat/update_pmu_pau_reg_description_v6.1' into 'release/v6.1'
feat(soc): update esp32c61 PMU & PAU reg header descriptions (v6.1)

See merge request espressif/esp-idf!50431
2026-07-16 11:28:44 +08:00
Jiang Jiang Jian 66ed442256 Merge branch 'fix/fatfs_vulnerabilities_v6.1' into 'release/v6.1'
fix(fatfs): harden against runZero 2026 FatFs bugs (v6.1)

See merge request espressif/esp-idf!50424
2026-07-16 11:28:22 +08:00
Jiang Jiang Jian f6eadf3e95 Merge branch 'fix/fix_mpll_enable_order_v6.1' into 'release/v6.1'
fix(esp_hw_support): fix esp32s31 mpll initialization (v6.1)

See merge request espressif/esp-idf!50430
2026-07-16 11:28:17 +08:00
Jiang Jiang Jian 0196213a13 Merge branch 'fix/ble_mesh_fixed_issues_v6.1' into 'release/v6.1'
Resolve reported BLE mesh stack issues (6.1)

See merge request espressif/esp-idf!50408
2026-07-16 11:27:36 +08:00
Jiang Jiang Jian f174b3baa6 Merge branch 'fix/vfs_fatfs_test_stale_partition_v6.1' into 'release/v6.1'
test(vfs): reformat WL FATFS in setup to avoid stale-partition flakes (v6.1)

See merge request espressif/esp-idf!50400
2026-07-16 11:27:21 +08:00
Tiago Medicci a8382517ca test(ana_cmpr): Add edge-specific interrupt direction test case
Add a Unity test case that arms only ANA_CMPR_CROSS_POS (resp. only
ANA_CMPR_CROSS_NEG) on a unit and asserts that a real transition of
the matching direction fires the callback exactly once, while a
transition of the opposite (never-armed) direction does not fire at
all.

This closes a gap in the existing test_apps: none of the current
cases isolate cross direction, so a swapped POS/NEG interrupt mask in
the LL layer (fixed in the previous commit) previously went
undetected.

On the scan-based comparator IP (ESP32-H4/S31), a crossing is only
sampled/latched when a scan is explicitly triggered, so the new test
case also triggers a scan after each level change on that IP, plus
one extra priming scan right after enabling the unit so the internal
compare state starts in sync with the already-set initial GPIO level.

Signed-off-by: Tiago Medicci <tiago.medicci@espressif.com>
2026-07-16 11:23:28 +08:00
Tiago Medicci dd44195481 fix(ana_cmpr): Fix swapped POS/NEG cross interrupt masks on ESP32-C5/P4/C61
In components/soc/esp32c5/register/soc/gpio_ext_struct.h (ESP32-C5),
components/soc/esp32c61/register/soc/gpio_ext_struct.h (ESP32-C61),
and components/soc/esp32p4/register/hw_ver3/soc/gpio_struct.h
(ESP32-P4), the analog comparator raw/status/enable/clear register
fields are named comp_neg_0_*/comp0_neg_* for bit 0 and
comp_pos_0_*/comp0_pos_* for bit 1, but each field's own comment says
the opposite: bit 0 is documented as "analog comparator pos edge
interrupt raw/status/enable/clear" and bit 1 as the "neg" counterpart.
The LL masks were defined from the field names rather than from this
documented behavior, so ANALOG_CMPR_LL_POS_CROSS_INTR_MASK() ended up
selecting bit 1 and ANALOG_CMPR_LL_NEG_CROSS_INTR_MASK() bit 0.

A new test case, added in the following commit, arms only one cross
direction at a time and checks that a matching transition fires the
callback while the opposite, never-armed direction does not; without
this fix it reproducibly fails on ESP32-C5, ESP32-P4, and ESP32-C61.

Signed-off-by: Tiago Medicci <tiago.medicci@espressif.com>
2026-07-16 11:23:27 +08:00
Jiang Jiang Jian 0e479cbf81 Merge branch 'bugfix/i2c_set_but_not_used_variable_v6.1' into 'release/v6.1'
fix(i2c): remove unused but set variables (v6.1)

See merge request espressif/esp-idf!50370
2026-07-16 10:48:53 +08:00
Jiang Jiang Jian e813155ec4 Merge branch 'feature/dma2d_ppa_sleep_retention_support_v6.1' into 'release/v6.1'
feat(ppa): add sleep retention support for DMA2D and PPA (v6.1)

See merge request espressif/esp-idf!50342
2026-07-16 10:48:27 +08:00
Jiang Jiang Jian 479ff2c98b Merge branch 'change/change_regdma_malloc_caps_v6.1' into 'release/v6.1'
change(esp_hw_support): change regdma malloc caps to allow getting memory in the DMA pool (v6.1)

See merge request espressif/esp-idf!50257
2026-07-16 10:44:21 +08:00
Jiang Jiang Jian 3e573b992b Merge branch 'fix/fix_async_color_convert_csc_v6.1' into 'release/v6.1'
fix(dma2d): fix async color convert csc check (v6.1)

See merge request espressif/esp-idf!50238
2026-07-16 10:43:55 +08:00
Jiang Jiang Jian 68137eca5d Merge branch 'fix/fix_ble_rtc_register_issue_after_reset_v6.1' into 'release/v6.1'
fix(ble): fix ble rtc reset issues on esp32-h4 and esp32-s31 (6.1)

See merge request espressif/esp-idf!50204
2026-07-16 10:43:26 +08:00
Jiang Jiang Jian 7a0db8d0aa Merge branch 'fix/ble_mesh_disable_adv_pkt_discard_log_v6.1' into 'release/v6.1'
fix(ble_mesh): Disable warning logging when advertising packets are discarded (6.1)

See merge request espressif/esp-idf!50168
2026-07-16 10:42:18 +08:00
Jiang Jiang Jian 590dab22f9 Merge branch 'fix/fix_rgb_frame_buffer_alignment_v6.1' into 'release/v6.1'
fix(gdma): fix buffer alignment when psram ecc enabled (v6.1)

See merge request espressif/esp-idf!49996
2026-07-16 10:40:18 +08:00
Jiang Jiang Jian b259c51ee3 Merge branch 'change/update_c61_gdma_header_v6.1' into 'release/v6.1'
change(ahb_dma): update c61 eco3 header files (v6.1)

See merge request espressif/esp-idf!49835
2026-07-16 10:38:55 +08:00
Konstantin Kondrashov 5bc1dfc166 fix(bootloader): handle extra component dirs in v1 subproject
Closes https://github.com/espressif/esp-idf/issues/18651
2026-07-16 10:37:12 +08:00
Michael.B 48f5135a8d spi_flash: fix PSRAM rodata phys2cache mapping
Use the full rodata page range when converting flash physical addresses back to cache addresses for XIP PSRAM. RISC-V extram stack coredump tests are temporarily skipped in CI until coredump supports PSRAM task stacks (IDF-15623).
2026-07-15 18:57:08 +08:00
Xiao Xufeng 8b7b2008da bootloader_utils: fixed missing unmap in load_partition_table when table verify failed 2026-07-15 18:57:08 +08:00
Xiao Xufeng 3e8389cc31 fix(mmap): fixed some API read wrong data via mmap when flash being erased/written while XIP on PSRAM
Before:

The cache won't be disabled when XIP on psram. But during flash
erasing/programming, read data will be courrupt.

When XIP in psram is enabled, the image is not mapped to the cache so
usually there will be no flash access. The only way to read from flash
is via the driver or use mmap. The driver has protection during erasing,
while th mmap region not.

Now:

Mmap APIs provide a flag to make mmap->unmap region mutually exclusive
to flash erase/programming when XIP from psram. SPI Flash write APIs
will benefit from this. When the flag is used, no concurrent access to
mapped region will happen while writing; otherwise the cache will be
disable to avoid data corruption.

Most ESP-IDF APIs calls mmap with this flag. As for users calling
mmap-like APIs directly, they can choose whether to enable this by a
flag.

Closes https://github.com/espressif/esp-idf/issues/14897
2026-07-15 18:57:08 +08:00
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
Hu Rui aa04662b21 feat(uhci): support transmit multi buffer 2026-07-15 17:34:31 +08:00
Abanoub Salah 5910abe5ef uart: fix threshold configuration loss when interrupts are disabled 2026-07-15 16:45:39 +08:00
Song Ruo Jing d5a3169ee5 fix(stdio): add console input ability when selects ESP_CONSOLE_UART_CUSTOM_NUM_1 2026-07-15 16:45:39 +08:00
Song Ruo Jing 339d8b568d feat(uart): add collision detection test cases for RS485
Related https://github.com/espressif/esp-idf/issues/16101
2026-07-15 16:45:39 +08:00
Song Ruo Jing 5a796df200 ci(uart): enable test for esp32h4 2026-07-15 16:45:39 +08:00
Song Ruo Jing a59daff749 fix(uart): fix uart sw flow ctrl XOFF char write to wrong reg on ESP32C6
Add software flow control test case

Introduced in e6ef4d1791

Closes https://github.com/espressif/esp-idf/issues/18779
2026-07-15 16:45:39 +08:00
wuzhenghui 981208a9ad fix(esp_hw_support): disable esp32 livelock workaround before stall another core 2026-07-15 16:10:51 +08:00
wanckl fa157ab86d fix(driver_twai): add fd test on ci 2026-07-15 11:22:56 +08:00
wanckl 5912fe2107 feat(driver_twai): fd hardware support time trigger trans 2026-07-15 11:22:45 +08:00
wanckl a415ba1fcf fix(driver_twai): fixed legacy twai OOB issue when rx dlc larger than 8 2026-07-15 10:46:52 +08:00
radek.tandler f26db8177e fix(nvs_flash): fixed cleanup after nvs_set_blob failed on ESP_ERR_NVS_NOT_ENOUGH_SPACE
- fixed identification of blob parts to be cleaned by using right starting chunk index
  - improved localisation of blobs for cases where some of pages get reclaimed
  - created host test cases covering the edge cases above
2026-07-14 16:42:27 +02:00
yi chen e9c3ed8fb4 fix(wear_levelling): guard WL_Flash::write()/read() against size==0 underflow
WL_Flash::write() and WL_Flash::read() computed:

    uint32_t count = (size - 1) / this->cfg.wl_page_size;

`size` is `size_t` (unsigned). Neither the public wl_write()/wl_read() API
(wear_levelling.cpp), nor the newer wl_bdl_write()/wl_bdl_read() block-device
path (wl_blockdev.cpp), reject size == 0 before calling into WL_Flash, and
wear_levelling.h does not document size == 0 as invalid (a 0-byte
write/read is a reasonable no-op, mirroring POSIX write()/read() with
count == 0).

When size == 0, `size - 1` wraps around to SIZE_MAX, so `count` becomes an
enormous page count instead of 0. The functions then loop that many times,
reading (write()) or writing (read()) `wl_page_size` bytes per iteration
through the flash partition, immediately walking past the caller-supplied
buffer on the very first iteration:

  - write(): out-of-bounds *read* from the caller's `src` buffer.
  - read():  out-of-bounds *write* into the caller's `dest` buffer -- the
             more severe case, since it corrupts caller memory with flash
             content instead of merely over-reading.

Verified with a standalone reproduction that compiles the unmodified
WL_Flash.cpp against a mock Flash_Access partition: calling
`wl.write(0, an_8_byte_buffer, 0)` with no other change immediately
segfaults (confirmed count == 0xFFFFFFFF for wl_page_size == 4096); with
this fix applied the same call returns ESP_OK without touching memory
outside the buffer, and normal non-zero-size read/write is unaffected.

Add an early `size == 0` return (mirroring the existing `!initialized`
guard) to both functions, and a host_test regression case exercising
wl_write()/wl_read() with size == 0 through the public API.

Disclosure: this fix was prepared with AI assistance (Claude) and reviewed
by me before submission.

Signed-off-by: yi chen <94xhn1@gmail.com>
2026-07-14 12:22:53 +02:00
Akshat Agrawal 9c42f5f06f fix(nan): Transmit NULL packet correctly to avoid NDP termination 2026-07-14 10:31:40 +05:30
Shreyas Sheth 1519772ea8 fix(wpa_supplicant): Fix issues related to pmkid mismatch and eloop for dpp 2026-07-14 10:31:19 +05:30
tarun.kumar abe397bdf8 fix(wifi) : Correct blacklist flag
- Fixes state desync where global blacklist was cleared but blacklist bss flag was true causing rejection of correct AP as well.
2026-07-14 10:31:06 +05:30
zhangyanjiao a83db6a045 fix(wifi): fixed the offchan tx fail when SPIRAM_TRY_ALLOCATE_WIFI_LWIP enabled 2026-07-14 10:30:52 +05:30
Zhang Hai Peng a6404dcf8d fix(ble/bluedroid): downgrade numeric comparison log to warning
(cherry picked from commit 72a49ed53b)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-07-14 10:37:22 +08:00