Merge branch 'bugfix/fix_bleqabr23_808' into 'master'

Fixed assert when LLCP instant passed on ESP32-C3 and ESP32-S3(b8f0db9)

Closes BLERP-298, BLERP-299, BLERP-300, BLERP-301, BLERP-310, BLERP-311, and BLERP-312

See merge request espressif/esp-idf!27477
pull/12698/head^2
Island 2023-12-05 11:51:20 +08:00
commit 345013fa46
3 zmienionych plików z 5 dodań i 6 usunięć

@ -1 +1 @@
Subproject commit cecbe387799b41346c0affab41f339306a33e518
Subproject commit f103dfec019fdd5bf9255abcaeaf20c707b26dc6

Wyświetl plik

@ -298,7 +298,7 @@ BOOLEAN btm_update_dev_to_white_list(BOOLEAN to_add, BD_ADDR bd_addr, tBLE_ADDR_
addr_type = p_dev_rec->ble.static_addr_type;
}
// white list must be public address or static random address
// The device to be added to white list must be public address or random address
if(addr_type == BLE_ADDR_RANDOM) {
/*
A static address is a 48-bit randomly generated address and shall meet the following requirements:
@ -307,8 +307,7 @@ BOOLEAN btm_update_dev_to_white_list(BOOLEAN to_add, BD_ADDR bd_addr, tBLE_ADDR_
All bits of the random part of the address shall not be equal to 0
*/
invalid_rand_addr_b[0] = invalid_rand_addr_b[0] | BT_STATIC_RAND_ADDR_MASK;
if((bd_addr[0] & BT_STATIC_RAND_ADDR_MASK) == BT_STATIC_RAND_ADDR_MASK
&& memcmp(invalid_rand_addr_a, bd_addr, BD_ADDR_LEN) != 0
if(memcmp(invalid_rand_addr_a, bd_addr, BD_ADDR_LEN) != 0
&& memcmp(invalid_rand_addr_b, bd_addr, BD_ADDR_LEN) != 0){
// do nothing
} else {

Wyświetl plik

@ -116,7 +116,6 @@ r_lld_con_evt_time_update_eco = 0x40001d0c;
r_lld_con_start_eco = 0x40001d10;
r_lld_con_frm_isr_eco = 0x40001d14;
r_lld_con_tx_eco = 0x40001d18;
r_lld_con_evt_start_cbk_eco = 0x40001d1c;
r_lld_scan_evt_start_cbk_eco = 0x40001d20;
r_lld_scan_start_eco = 0x40001d24;
r_lld_ext_scan_dynamic_pti_process_eco = 0x40001d28;
@ -205,7 +204,6 @@ r_sch_arb_event_start_isr = 0x400014f8;
r_sch_plan_set = 0x40001534;
r_sch_prog_end_isr = 0x40001538;
r_lld_adv_ext_chain_scannable_construct = 0x40001b58;
r_lld_con_tx_prog_new_packet = 0x40001b74;
r_lld_scan_process_pkt_rx = 0x40001280;
r_llm_le_features_get = 0x400013b0;
@ -220,6 +218,8 @@ r_lld_adv_frm_isr_eco = 0x40001d00;
r_lld_res_list_clear = 0x40004638;
r_lld_res_list_rem = 0x40004680;
r_lld_adv_start_hook = 0x40001c80;
r_lld_con_evt_start_cbk_eco = 0x40001d1c;
r_lld_con_tx_prog_new_packet = 0x40001b74;
*/