forked from espressif/esp-idf
Merge branch 'feature/adv_queue_congestion' into 'master'
feat(nimble): Added adv queue congestion check See merge request espressif/esp-idf!25310
This commit is contained in:
@ -863,3 +863,12 @@ config BT_NIMBLE_HIGH_DUTY_ADV_ITVL
|
||||
depends on BT_NIMBLE_ENABLED
|
||||
help
|
||||
This enable BLE high duty advertising interval feature
|
||||
|
||||
config BT_NIMBLE_HOST_QUEUE_CONG_CHECK
|
||||
bool "BLE queue congestion check"
|
||||
depends on BT_NIMBLE_ENABLED
|
||||
default n
|
||||
help
|
||||
When scanning and scan duplicate is not enabled, if there are a lot of adv packets around
|
||||
or application layer handling adv packets is slow, it will cause the controller memory
|
||||
to run out. if enabled, adv packets will be lost when host queue is congested.
|
||||
|
@ -265,6 +265,10 @@ esp_err_t esp_nimble_hci_init(void)
|
||||
|
||||
xSemaphoreGive(vhci_send_sem);
|
||||
|
||||
#if MYNEWT_VAL(BLE_QUEUE_CONG_CHECK)
|
||||
ble_adv_list_init();
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
err:
|
||||
ble_buf_free();
|
||||
@ -286,5 +290,9 @@ esp_err_t esp_nimble_hci_deinit(void)
|
||||
|
||||
ble_buf_free();
|
||||
|
||||
#if MYNEWT_VAL(BLE_QUEUE_CONG_CHECK)
|
||||
ble_adv_list_deinit();
|
||||
#endif
|
||||
|
||||
return ESP_OK;
|
||||
}
|
||||
|
Submodule components/bt/host/nimble/nimble updated: 37877f9b64...d826fefc3a
@ -1738,4 +1738,12 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef MYNEWT_VAL_BLE_QUEUE_CONG_CHECK
|
||||
#ifdef CONFIG_BT_NIMBLE_HOST_QUEUE_CONG_CHECK
|
||||
#define MYNEWT_VAL_BLE_QUEUE_CONG_CHECK CONFIG_BT_NIMBLE_HOST_QUEUE_CONG_CHECK
|
||||
#else
|
||||
#define MYNEWT_VAL_BLE_QUEUE_CONG_CHECK FALSE
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user