From dd8096e32aa7dd76de703a845b78215491888aba Mon Sep 17 00:00:00 2001 From: Jin Chen Date: Thu, 11 Dec 2025 16:22:50 +0800 Subject: [PATCH 1/3] fix(ble): add soc caps config for pawr feat on ESP32C6 (cherry picked from commit 4e4b863299164bfb78fa2c4142e0a57a2894232f) Co-authored-by: cjin --- components/bt/controller/esp32c6/Kconfig.in | 2 +- components/bt/host/nimble/Kconfig.in | 2 +- components/soc/esp32c6/include/soc/Kconfig.soc_caps.in | 4 ++++ components/soc/esp32c6/include/soc/soc_caps.h | 1 + 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/components/bt/controller/esp32c6/Kconfig.in b/components/bt/controller/esp32c6/Kconfig.in index a2f5ec997b..41d954c7e7 100644 --- a/components/bt/controller/esp32c6/Kconfig.in +++ b/components/bt/controller/esp32c6/Kconfig.in @@ -239,7 +239,7 @@ config BT_LE_CTE_FEATURE_ENABLED config BT_LE_PERIODIC_ADV_WITH_RESPONSE_ENABLED bool "Enable BLE periodic advertising with response" - depends on BT_LE_50_FEATURE_SUPPORT + depends on BT_LE_50_FEATURE_SUPPORT && SOC_BLE_PERIODIC_ADV_WITH_RESPONSE default n help This enables BLE periodic advertising with response feature diff --git a/components/bt/host/nimble/Kconfig.in b/components/bt/host/nimble/Kconfig.in index 106b92fdb8..3f1c2de4fd 100644 --- a/components/bt/host/nimble/Kconfig.in +++ b/components/bt/host/nimble/Kconfig.in @@ -560,7 +560,7 @@ menu "BLE 5.x Features" config BT_NIMBLE_PERIODIC_ADV_WITH_RESPONSES bool "Enable Periodic Advertisement with Response (EXPERIMENTAL)" - depends on BT_NIMBLE_ENABLE_PERIODIC_ADV + depends on BT_NIMBLE_ENABLE_PERIODIC_ADV && SOC_BLE_PERIODIC_ADV_WITH_RESPONSE default n help This enables controller PAwR (Periodic Advertisement with Response). diff --git a/components/soc/esp32c6/include/soc/Kconfig.soc_caps.in b/components/soc/esp32c6/include/soc/Kconfig.soc_caps.in index 90a313d203..85a7e68482 100644 --- a/components/soc/esp32c6/include/soc/Kconfig.soc_caps.in +++ b/components/soc/esp32c6/include/soc/Kconfig.soc_caps.in @@ -1303,6 +1303,10 @@ config SOC_BLE_MULTI_CONN_OPTIMIZATION bool default y +config SOC_BLE_PERIODIC_ADV_WITH_RESPONSE + bool + default y + config SOC_BLE_USE_WIFI_PWR_CLK_WORKAROUND bool default y diff --git a/components/soc/esp32c6/include/soc/soc_caps.h b/components/soc/esp32c6/include/soc/soc_caps.h index 434eb10af9..d5ac7dd3a3 100644 --- a/components/soc/esp32c6/include/soc/soc_caps.h +++ b/components/soc/esp32c6/include/soc/soc_caps.h @@ -537,6 +537,7 @@ #define SOC_BLE_PERIODIC_ADV_ENH_SUPPORTED (1) /*!< Support For BLE Periodic Adv Enhancements */ #define SOC_BLUFI_SUPPORTED (1) /*!< Support BLUFI */ #define SOC_BLE_MULTI_CONN_OPTIMIZATION (1) /*!< Support multiple connections optimization */ +#define SOC_BLE_PERIODIC_ADV_WITH_RESPONSE (1) /*!< Support Bluetooth LE Periodic Advertising with Response (PAwR) */ #define SOC_BLE_USE_WIFI_PWR_CLK_WORKAROUND (1) From a785a7321c9d0b3dee60534e08029d3daa81bfd9 Mon Sep 17 00:00:00 2001 From: Jin Chen Date: Thu, 11 Dec 2025 16:22:52 +0800 Subject: [PATCH 2/3] fix(ble): remove target dependency on power control config on ESP32C6 (cherry picked from commit f29f500ac8a2ea0e8de2005f08e7c0e79c3c4adc) Co-authored-by: cjin --- components/bt/controller/esp32c6/Kconfig.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/bt/controller/esp32c6/Kconfig.in b/components/bt/controller/esp32c6/Kconfig.in index 41d954c7e7..bffab12e66 100644 --- a/components/bt/controller/esp32c6/Kconfig.in +++ b/components/bt/controller/esp32c6/Kconfig.in @@ -222,7 +222,7 @@ config BT_LE_MAX_PERIODIC_ADVERTISER_LIST config BT_LE_POWER_CONTROL_ENABLED bool "Enable controller support for BLE Power Control" - depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED && IDF_TARGET_ESP32C6 + depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED default n help Set this option to enable the Power Control feature on controller From 692784cde9e46517b37c6978d62d2d7e1f49ca53 Mon Sep 17 00:00:00 2001 From: cjin Date: Tue, 9 Dec 2025 16:21:41 +0800 Subject: [PATCH 3/3] fix(ble): add soc caps config for pawr feat on ESP32H2 --- components/bt/controller/esp32h2/Kconfig.in | 2 +- components/soc/esp32h2/include/soc/Kconfig.soc_caps.in | 4 ++++ components/soc/esp32h2/include/soc/soc_caps.h | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/components/bt/controller/esp32h2/Kconfig.in b/components/bt/controller/esp32h2/Kconfig.in index 00ae776c2d..c52de7cf2b 100644 --- a/components/bt/controller/esp32h2/Kconfig.in +++ b/components/bt/controller/esp32h2/Kconfig.in @@ -242,7 +242,7 @@ config BT_LE_CTE_FEATURE_ENABLED config BT_LE_PERIODIC_ADV_WITH_RESPONSE_ENABLED bool "Enable BLE periodic advertising with response" - depends on BT_LE_50_FEATURE_SUPPORT + depends on BT_LE_50_FEATURE_SUPPORT && SOC_BLE_PERIODIC_ADV_WITH_RESPONSE default n help This enables BLE periodic advertising with response feature diff --git a/components/soc/esp32h2/include/soc/Kconfig.soc_caps.in b/components/soc/esp32h2/include/soc/Kconfig.soc_caps.in index 819a564d8b..643b7cf8ab 100644 --- a/components/soc/esp32h2/include/soc/Kconfig.soc_caps.in +++ b/components/soc/esp32h2/include/soc/Kconfig.soc_caps.in @@ -1270,3 +1270,7 @@ config SOC_BLE_PERIODIC_ADV_ENH_SUPPORTED config SOC_BLE_CTE_SUPPORTED bool default y + +config SOC_BLE_PERIODIC_ADV_WITH_RESPONSE + bool + default y diff --git a/components/soc/esp32h2/include/soc/soc_caps.h b/components/soc/esp32h2/include/soc/soc_caps.h index 2da14a63f1..dbd24e5c9e 100644 --- a/components/soc/esp32h2/include/soc/soc_caps.h +++ b/components/soc/esp32h2/include/soc/soc_caps.h @@ -540,3 +540,4 @@ #define SOC_BLE_MULTI_CONN_OPTIMIZATION (1) /*!< Support multiple connections optimization */ #define SOC_BLE_PERIODIC_ADV_ENH_SUPPORTED (1) /*!< Support For BLE Periodic Adv Enhancements */ #define SOC_BLE_CTE_SUPPORTED (1) /*!< Support Bluetooth LE Constant Tone Extension (CTE) */ +#define SOC_BLE_PERIODIC_ADV_WITH_RESPONSE (1) /*!< Support Bluetooth LE Periodic Advertising with Response (PAwR) */