Merge branch 'feature/support_ble_direct_ind_low_adv_v4.4' into 'release/v4.4'

components/bt: Support low duty cycle directed advertising(backport release/v4.4)

See merge request espressif/esp-idf!16377
pull/8644/head
Jiang Jiang Jian 2021-12-21 04:07:13 +00:00
commit 187f47d232
2 zmienionych plików z 7 dodań i 4 usunięć

Wyświetl plik

@ -108,7 +108,7 @@ const UINT8 btm_le_state_combo_tbl[BTM_BLE_STATE_MAX][BTM_BLE_STATE_MAX][2] = {
{HCI_SUPP_LE_STATES_INIT_MASK, HCI_SUPP_LE_STATES_INIT_OFF}, /* init */
{HCI_SUPP_LE_STATES_INIT_MASK, HCI_SUPP_LE_STATES_INIT_OFF}, /* master */
{HCI_SUPP_LE_STATES_SLAVE_MASK, HCI_SUPP_LE_STATES_SLAVE_OFF}, /* slave */
{0, 0}, /* todo: lo du dir adv, not covered ? */
{HCI_SUPP_LE_STATES_LO_DUTY_DIR_ADV_MASK, HCI_SUPP_LE_STATES_LO_DUTY_DIR_ADV_OFF}, /* lo du dir adv */
{HCI_SUPP_LE_STATES_HI_DUTY_DIR_ADV_MASK, HCI_SUPP_LE_STATES_HI_DUTY_DIR_ADV_OFF}, /* hi duty dir adv */
{HCI_SUPP_LE_STATES_NON_CONN_ADV_MASK, HCI_SUPP_LE_STATES_NON_CONN_ADV_OFF}, /* non connectable adv */
{HCI_SUPP_LE_STATES_PASS_SCAN_MASK, HCI_SUPP_LE_STATES_PASS_SCAN_OFF}, /* passive scan */
@ -174,8 +174,8 @@ const UINT8 btm_le_state_combo_tbl[BTM_BLE_STATE_MAX][BTM_BLE_STATE_MAX][2] = {
{0, 0}, /* lo duty cycle adv 40 */
{0, 0}, /* hi duty cycle adv 39 */
{0, 0}, /* non connectable adv */
{0, 0}, /* TODO: passive scan, not covered? */
{0, 0}, /* TODO: active scan, not covered? */
{HCI_SUPP_LE_STATES_LO_DUTY_DIR_ADV_PASS_SCAN_MASK, HCI_SUPP_LE_STATES_LO_DUTY_DIR_ADV_PASS_SCAN_OFF}, /* passive scan */
{HCI_SUPP_LE_STATES_LO_DUTY_DIR_ADV_ACTIVE_SCAN_MASK, HCI_SUPP_LE_STATES_LO_DUTY_DIR_ADV_ACTIVE_SCAN_OFF}, /* active scan */
{0, 0} /* scanable adv */
},
{ /* hi duty cycle adv */

Wyświetl plik

@ -363,7 +363,10 @@ BOOLEAN l2c_link_hci_disc_comp (UINT16 handle, UINT8 reason)
/* If we don't have one, maybe an SCO link. Send to MM */
if (!p_lcb) {
#if (BLE_INCLUDED == TRUE)
BTM_Recovery_Pre_State();
/* The Directed Advertising Timeout error code indicates that directed advertising completed */
if (reason != HCI_ERR_DIRECTED_ADVERTISING_TIMEOUT) {
BTM_Recovery_Pre_State();
}
#endif ///BLE_INCLUDED == TRUE
status = FALSE;
} else {