Commit Graph
36882 Commits
Author SHA1 Message Date
Mahavir Jain ebb5f4e965 Merge branch 'fix/rsa_ds_driver_constant_time_v6.1' into 'release/v6.1'
Fix/rsa ds driver constant time (v6.1)

See merge request espressif/esp-idf!49698
2026-06-30 07:16:59 +05:30
Mahavir Jain 124a38d1e4 Merge branch 'bugfix/fix_protocomm_sec2_double_free_decrypt_v6.1' into 'release/v6.1'
fix(protocomm): null output buffer pointer on crypto failure (v6.1)

See merge request espressif/esp-idf!49700
2026-06-30 07:16:28 +05:30
Mahavir Jain 7a2bb09375 Merge branch 'fix/secure_boot_bootloader_ecdsa_range_gate_v6.1' into 'release/v6.1'
Add ECDSA signature bounds check in bootloader before Secure Boot verify (v6.1)

See merge request espressif/esp-idf!49632
2026-06-30 07:15:59 +05:30
Mahavir Jain 64e1461683 Merge branch 'fix/esp_tee_heap_poison_v6.1' into 'release/v6.1'
fix(esp_tee): Prevent TEE from dispatching the REE heap poisoning callback (v6.1)

See merge request espressif/esp-idf!49910
2026-06-30 07:15:35 +05:30
Mahavir Jain 31607b5cf0 Merge branch 'fix/handle_return_code_304_during_ota_head_request_v6.1' into 'release/v6.1'
fix: handle return code 304 during HTTP HEAD request in partial OTA (v6.1)

See merge request espressif/esp-idf!49762
2026-06-30 07:14:20 +05:30
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
JiangGuangMingandCursor 5099acf16e feat(usb): add usb wakeup from light sleep example
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 16:08:35 +08:00
JiangGuangMingandCursor 0252365360 feat(esp_hal_usb): add usb suspend wakeup status in ll layer
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 16:08:35 +08:00
JiangGuangMingandCursor 4625335d93 feat(sleep/usb): support usb as wakeup source from light sleep
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 16:08:35 +08:00
yangfeng 9517a7b93b fix(bt): Fix the critical issues related to A2DP from AI review report
AVDT:
- Roll back CCB allocation when cmd/rsp queue creation fails
- Free media packet on invalid handle in AVDT_WriteReqOpt
- Zero-init timeout failure message before GETCAP callback
- Initialize lcid_tbl to 0xFF to avoid mapping to tc_tbl[0]
BTA/AVRCP:
- Use size_t for AVRC message copy buffer allocation
- Allocate before register in BTA_AvEnable
- Guard BTA_AvRegister callback when enable never completed
- Remove invalid free of inline Cover Art image_descriptor
A2DP BTC/API:
- Default g_a2dp_on_deinit to true before profile init
- Reject source audio send when A2DP is deiniting
- Add shutdown state check in btc_a2dp_sink_shutdown
- Guard A2DP source timer against freed dynamic local param
2026-06-29 14:57:22 +08:00
yangfeng 57f28af482 fix: Fix the critical issues of btu and bt_common from AI review report
- advance connect queue on synchronous connect_cb failure
- lock bta_alarm_hash_map in all BTA timer APIs
- free controller params after stack disable; cleanup on init fail
- handle BTE_InitStack failure and signal init future
- validate HCI remote name event length before parse
- drop stale L2CAP quick-timer alarm events
2026-06-29 14:45:46 +08:00
zhuanghang 9fb8f967b4 feat(802.15.4): avoid missing abort reason for multievents in 154 debug 2026-06-29 14:19:57 +08:00
zhanghaipeng c69d150565 fix(bt): update ESP32 libbtdm_app.a to 4a0f94d5
- Fix connection failure when using RPA with whitelist filtering
- Fix disconnect with reason 0x08 during full scan
- Fix peer RPA resolution failure when advertising with a local identity address
2026-06-29 10:38:51 +08:00
Jin Cheng e44fcbd35f fix(bt/controller): fixed several BR/EDR controller bugs found by WVT regression tests on ESP32 2026-06-29 10:38:34 +08:00
Zhang Hai Peng 59a740ca12 fix(ble/bluedroid): preserve HCI status on BLE 4.2 GAP failures
Return BTM_HCI_ERROR | hci_status from legacy BLE 4.2 GAP HCI command
paths instead of mapping failures to BTM_ILLEGAL_VALUE or
BTM_NO_RESOURCES. Add btm_ble_status_from_hci() helper and propagate
real status through scan start/stop completion callbacks.


(cherry picked from commit 47dd785a18)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:24:54 +08:00
Zhang Hai Peng e9fce74445 feat(ble/bluedroid): Optimize Bluedroid memory usage
- Delete unused device records (~356B each)


(cherry picked from commit 7d1c0e9a32)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:24:34 +08:00
Zhang Hai Peng 7b2b31bb0d fix(ble/bluedroid): cap Read By Type response length at ATT maximum
Read By Type Response Length is one octet (max 255). When MTU was
large enough to return a long characteristic value in one pair, the
server wrote (UINT8)(value_len + 2) and overflowed (e.g. 513 -> 1),
so the client rejected the PDU as GATT_INVALID_PDU (0x04).

Cap server value to 253 bytes per pair, clamp the length byte, and
continue long reads via Read Blob when the capped size is returned.


(cherry picked from commit 97905afccc)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:24:16 +08:00
Zhang Hai Peng 54e7b74cc1 fix(ble/bluedroid): Fixed potential double Execute Write Response
(cherry picked from commit 0a93ccd3b3)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:23:59 +08:00
Zhang Hai Peng f00c216ce2 fix(ble/bluedroid): preserve ATT error on prepare write completion
Skip prepare-write echo validation when the GATT stack reports a
non-success status. ATT Error Response carries no prepare-write echo
body (rsp_len=0), so the check incorrectly overwrote errors such as
GATT_INSUF_AUTHENTICATION (0x05) with GATT_INVALID_PDU (0x04).


(cherry picked from commit d5b9350d0f)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:23:38 +08:00
Zhang Hai Peng 4bf3d52183 fix(ble/bluedroid): unblock sync HCI cmd on Command Status error
Release the BLE sync semaphore and record HCI status when a
synchronous command is rejected via Command Status, since no
Command Complete event follows.


(cherry picked from commit 29ae92f4ef)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:16:49 +08:00
Zhang Hai Peng fab51c7925 fix(ble/bluedroid): set REQ_WAITING before GATTC service-change rediscovery
When service change cancels in-progress discovery, bta_gattc_disc_cmpl()
re-triggers discovery without marking auto_update as REQ_WAITING. If a
client command is queued in p_q_cmd, bta_gattc_start_discover() refuses
to restart and the command is never dispatched.


(cherry picked from commit 13926bb9bc)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:16:32 +08:00
Zhang Hai Peng 50c719356c fix(ble/bluedroid): report conn param update failure for unknown BD_ADDR
Route unknown BD_ADDR and other immediate failures through the existing
need_cb path so ESP_GAP_BLE_UPDATE_CONN_PARAMS_EVT is always delivered.


(cherry picked from commit f9eaeb5e84)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:16:14 +08:00
Zhang Hai Peng 95c5099ed9 fix(ble/bluedroid): add context to GATTC reg-notify cache warning
Include client_if, handle, bd_addr, and server cache state in the
warning logged when notification registration skips handle validation.


(cherry picked from commit 1085a32be8)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:16:14 +08:00
Zhang Hai Peng feb1da9239 fix(ble/bluedroid): return ESP_ERR_INVALID_ARG for invalid conn params
Return ESP_ERR_INVALID_ARG instead of ESP_FAIL when connection
parameter validation fails


(cherry picked from commit 6c53838e66)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:16:13 +08:00
Zhang Hai Peng 003a4007e5 fix(ble/bluedroid): reject adv data on legacy directed ext adv
(cherry picked from commit c339cec380)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:15:54 +08:00
Zhang Hai Peng 2f8c3b6c1a fix(ble/bluedroid): skip identity conversion for static random direct connect
Do not rewrite static or non-resolvable random peer addresses to
identity type 0x03 when CONFIG_BT_BLE_RPA_SUPPORTED is enabled.


(cherry picked from commit 2ef10ef488)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-06-26 20:15:35 +08:00
Laukik Hase e99233f202 fix(esp_tee): Add additional input validation checks for TEE service calls 2026-06-26 15:06:27 +05:30
Laukik Hase 081d27cbd2 fix(esp_tee): Avoid crypto peripherals reset with esp_restart() from REE
- Reset the crypto peripherals during TEE initialization
2026-06-26 15:06:13 +05:30
Laukik Hase 07970bd5df fix(esp_tee): Prevent TEE from dispatching the REE heap poisoning callback 2026-06-26 15:06:12 +05:30
Zhi Wei Jian 85d364da14 feat(ble/bluedroid): add CS Security Requirements host support (Core 6.3)
(cherry picked from commit 919622c01c)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-06-26 09:08:36 +08:00
Zhi Wei Jian 9a6f769a45 feat(ble/bluedroid): add LE UTP host support (Core 6.2)
(cherry picked from commit 3844e24207)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-06-26 09:08:35 +08:00
Zhi Wei JianandCursor ecc48e1450 feat(ble/bluedroid): add Shorter Connection Intervals host support (Core 6.2)
Co-authored-by: Cursor <cursoragent@cursor.com>


(cherry picked from commit 2a8a96d650)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-06-26 09:08:35 +08:00
Zhi Wei Jian 8a8727cfba feat(ble/bluedroid): add LL Extended Feature Set host support (Core 6.0)
(cherry picked from commit d568f2f151)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-06-26 09:08:34 +08:00
Zhi Wei JianandCursor fcba9face2 feat(ble/bluedroid): add Frame Space Update host support (Core 6.0)
Co-authored-by: Cursor <cursoragent@cursor.com>


(cherry picked from commit 5372ce03a3)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-06-26 09:08:34 +08:00
Zhi Wei Jian 92328f276e feat(ble/bluedroid): add DBAF host support (Core 6.0)
(cherry picked from commit e20d3f0197)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-06-26 09:08:33 +08:00
hebinglin fba19e1d9a change(esp_hw_support): support optional delay for DPD entry and exit 2026-06-25 16:00:49 +08:00
hebinglin 673d6955cc fix(spi_flash): fix dpd failed when spi hal placed in flash 2026-06-25 16:00:43 +08:00
yangfeng ce898faf35 fix(bt): Fix the high issues related to AVRCP from AI review report
- SDP/registration: handle SDP record creation and discovery failures safely
- AVRC stack: fix packet checks, fragment leaks, response build, and compile guards
- BTC AVRCP: fix return codes, connection state, metadata parsing, and memory leaks
- AVCTP: fix event passing, L2CAP conflicts, TX queue leaks, and disconnect handling
- Example: remove TG RN capability setup before initialization
2026-06-25 14:42:06 +08:00
yangfeng 37b55f4ca5 fix(bt): Fix the critical issues related to AVRCP from AI review report
- recalculate len_left per attribute in avrc_bld_app_setting_text_rsp
- abort fragmented message reassembly when reassembly buffer alloc fails
2026-06-25 14:42:06 +08:00
C.S.M 86a93df6c9 fix(jpeg): Fix the jpeg size might exceed the buffer size 2026-06-25 14:41:20 +08:00
yangfeng 6c3b30a9d9 fix(bt): Fix the critical issues related to HFP from AI review report
HFP AG:
- Fix mSBC EV3 second-packet payload length calculation to prevent OOB read and infinite loop
- Add init/deinit guards in HF AG helper functions to avoid NULL deref
- Return bt_status_t from btc_hf_ag_audio_data_send to avoid silent buffer leak on SLC failure
- Break SCO CI data loop when SCO is not open to prevent CPU starvation
- Guard BTM_FreeSCN(0) and reset SCN after free in bta_ag_del_records
- Use OI_UINT32 for mSBC decode frame length to avoid stack corruption
- Bound AT Dial command string copy to BTA_AG_AT_MAX_LEN
HFP Client:
- Check osi_calloc result before use when reassembling split mSBC frames
- Use OI_UINT32 for mSBC decode frame length to avoid stack corruption
- Free SDP db, collision/AT timers and queued AT cmds before scb reset on disable
- Fix mSBC EV3 second-packet payload length calculation (same as AG)
- Reject pcm_resample input smaller than overlap window (96 bytes) on filtered path
- Break SCO CI data loop when SCO is not open to prevent CPU starvation
- Guard BTM_FreeSCN(0) and reset SCN after free in bta_hf_client_del_record
2026-06-25 11:58:38 +08:00
Ashish Sharma 41b09acfe8 fix(rsa_ds): make RSA-OAEP unpadding constant-time 2026-06-25 10:40:37 +08:00
Ashish Sharma 9a703650cd fix(rsa_ds): make PKCS#1 v1.5 unpadding constant-time 2026-06-25 10:40:37 +08:00
Adam Múdry a61262ed6c fix(sdmmc): Handle nonsensical max freq correctly
Closes https://github.com/espressif/esp-idf/issues/15250
2026-06-24 12:35:37 +02:00
Chen Chen aacb5982bc ci(i2s): remove distable tags of h4&s31 for I2S tests 2026-06-24 14:11:36 +08:00
Guo Zifan 2ee0c43f25 feat(ble_log): Add frame check support for restart flow
(cherry picked from commit a81322a2ce)

Co-authored-by: guozifan <guozifan@espressif.com>
2026-06-24 11:25:33 +08:00
wanckl de63f3978b feat(driver_twai): add prioritized TX queue support 2026-06-23 20:18:04 +08:00
wanckl 671606b9b5 feat(driver_twai): support using all 4 hardware tx buffer 2026-06-23 20:17:54 +08:00
wanckl 5223006ec7 fix(driver_twai): fixed twaifd slow bitrate trans faile on correct bitrate 2026-06-23 20:17:28 +08:00
Wan Lei ea951b0ca6 fix(driver_twai): enable ci test for h4 2026-06-23 20:07:57 +08:00