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
|
depends on BT_NIMBLE_ENABLED
|
||||||
help
|
help
|
||||||
This enable BLE high duty advertising interval feature
|
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);
|
xSemaphoreGive(vhci_send_sem);
|
||||||
|
|
||||||
|
#if MYNEWT_VAL(BLE_QUEUE_CONG_CHECK)
|
||||||
|
ble_adv_list_init();
|
||||||
|
#endif
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
err:
|
err:
|
||||||
ble_buf_free();
|
ble_buf_free();
|
||||||
@@ -286,5 +290,9 @@ esp_err_t esp_nimble_hci_deinit(void)
|
|||||||
|
|
||||||
ble_buf_free();
|
ble_buf_free();
|
||||||
|
|
||||||
|
#if MYNEWT_VAL(BLE_QUEUE_CONG_CHECK)
|
||||||
|
ble_adv_list_deinit();
|
||||||
|
#endif
|
||||||
|
|
||||||
return ESP_OK;
|
return ESP_OK;
|
||||||
}
|
}
|
||||||
|
Submodule components/bt/host/nimble/nimble updated: 37877f9b64...d826fefc3a
@@ -1738,4 +1738,12 @@
|
|||||||
#endif
|
#endif
|
||||||
#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
|
#endif
|
||||||
|
Reference in New Issue
Block a user