diff --git a/components/bt/controller/esp32/bt.c b/components/bt/controller/esp32/bt.c index ffb0d9fc86..f2bc48fac9 100644 --- a/components/bt/controller/esp32/bt.c +++ b/components/bt/controller/esp32/bt.c @@ -257,6 +257,7 @@ extern void bt_stack_enableCoexVsCmd(bool en); extern void scan_stack_enableAdvFlowCtrlVsCmd(bool en); extern void adv_stack_enableClearLegacyAdvVsCmd(bool en); extern void advFilter_stack_enableDupExcListVsCmd(bool en); +extern void arr_stack_enableMultiConnVsCmd(bool en); #endif // (CONFIG_BT_NIMBLE_ENABLED) || (CONFIG_BT_BLUEDROID_ENABLED) /* Local Function Declare @@ -1722,6 +1723,7 @@ esp_err_t esp_bt_controller_init(esp_bt_controller_config_t *cfg) scan_stack_enableAdvFlowCtrlVsCmd(true); adv_stack_enableClearLegacyAdvVsCmd(true); advFilter_stack_enableDupExcListVsCmd(true); + arr_stack_enableMultiConnVsCmd(true); #endif // (CONFIG_BT_NIMBLE_ENABLED) || (CONFIG_BT_BLUEDROID_ENABLED) btdm_controller_status = ESP_BT_CONTROLLER_STATUS_INITED; @@ -1761,6 +1763,7 @@ esp_err_t esp_bt_controller_deinit(void) scan_stack_enableAdvFlowCtrlVsCmd(false); adv_stack_enableClearLegacyAdvVsCmd(false); advFilter_stack_enableDupExcListVsCmd(false); + arr_stack_enableMultiConnVsCmd(false); #endif // (CONFIG_BT_NIMBLE_ENABLED) || (CONFIG_BT_BLUEDROID_ENABLED) return ESP_OK; diff --git a/components/bt/controller/lib_esp32 b/components/bt/controller/lib_esp32 index 37e0472ea2..b8a08a0680 160000 --- a/components/bt/controller/lib_esp32 +++ b/components/bt/controller/lib_esp32 @@ -1 +1 @@ -Subproject commit 37e0472ea26fa0870e5b704c451b5290069a28c3 +Subproject commit b8a08a06807a692fe9387aa9e2ce7dfcfb29ba16 diff --git a/components/soc/esp32/include/soc/Kconfig.soc_caps.in b/components/soc/esp32/include/soc/Kconfig.soc_caps.in index 62d0681ca6..947f215fe3 100644 --- a/components/soc/esp32/include/soc/Kconfig.soc_caps.in +++ b/components/soc/esp32/include/soc/Kconfig.soc_caps.in @@ -871,6 +871,10 @@ config SOC_BLUFI_SUPPORTED bool default y +config SOC_BLE_MULTI_CONN_OPTIMIZATION + bool + default y + config SOC_ULP_HAS_ADC bool default y diff --git a/components/soc/esp32/include/soc/soc_caps.h b/components/soc/esp32/include/soc/soc_caps.h index 10deaef2a2..dbd20f4c6f 100644 --- a/components/soc/esp32/include/soc/soc_caps.h +++ b/components/soc/esp32/include/soc/soc_caps.h @@ -423,6 +423,7 @@ #define SOC_BT_CLASSIC_SUPPORTED (1) /*!< Support Bluetooth Classic hardware */ #define SOC_BLE_DEVICE_PRIVACY_SUPPORTED (0) /*!< Support BLE device privacy mode */ #define SOC_BLUFI_SUPPORTED (1) /*!< Support BLUFI */ +#define SOC_BLE_MULTI_CONN_OPTIMIZATION (1) /*!< Support multiple connections optimization */ /*-------------------------- ULP CAPS ----------------------------------------*/ #define SOC_ULP_HAS_ADC (1) /* ADC can be accessed from ULP */