Skip to content

Commit 286b8cb

Browse files
committed
Merge branch 'change/ble_update_lib_20251106' into 'master'
change(ble): [AUTO_MR] 20251106 - Update ESP BLE Controller Lib Closes BLERP-2379, BLERP-2380, BLERP-2372, and BLERP-2373 See merge request espressif/esp-idf!43154
2 parents a8453ff + 29890c8 commit 286b8cb

File tree

16 files changed

+65
-16
lines changed

16 files changed

+65
-16
lines changed

components/bt/controller/esp32c5/Kconfig.in

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -943,3 +943,11 @@ menu "Scheduling Priority Level Config"
943943
default 2 if BT_LE_SYNC_SCHED_PRIO_HIGH_LEVEL
944944
default 1
945945
endmenu
946+
947+
config BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN
948+
bool "Enable Peripheral fast PDU reception during latency"
949+
default n
950+
help
951+
When this option is enabled, the Controller continues receiving PDUs
952+
In the next connection event instead of entering latency
953+
After a data packet is received.

components/bt/controller/esp32c5/bt.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ extern void esp_unregister_npl_funcs (void);
155155
extern void npl_freertos_mempool_deinit(void);
156156
extern uint32_t r_os_cputime_get32(void);
157157
extern uint32_t r_os_cputime_ticks_to_usecs(uint32_t ticks);
158-
extern void r_ble_lll_rfmgmt_set_sleep_cb(void *s_cb, void *w_cb, void *s_arg,
158+
extern void r_ble_lll_sleep_set_sleep_cb(void *s_cb, void *w_cb, void *s_arg,
159159
void *w_arg, uint32_t us_to_enabled);
160160
extern void r_ble_rtc_wake_up_state_clr(void);
161161
extern int os_msys_init(void);
@@ -788,10 +788,10 @@ esp_err_t controller_sleep_init(void)
788788
#ifdef CONFIG_BT_LE_SLEEP_ENABLE
789789
ESP_LOGW(NIMBLE_PORT_LOG_TAG, "BLE modem sleep is enabled");
790790
#if CONFIG_FREERTOS_USE_TICKLESS_IDLE
791-
r_ble_lll_rfmgmt_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
791+
r_ble_lll_sleep_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
792792
BLE_RTC_DELAY_US_LIGHT_SLEEP);
793793
#else
794-
r_ble_lll_rfmgmt_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
794+
r_ble_lll_sleep_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
795795
BLE_RTC_DELAY_US_MODEM_SLEEP);
796796
#endif /* FREERTOS_USE_TICKLESS_IDLE */
797797
#endif // CONFIG_BT_LE_SLEEP_ENABLE

components/bt/controller/esp32c5/esp_bt_cfg.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,12 @@ extern "C" {
209209
#define DEFAULT_BT_LE_CTRL_FAST_CONN_DATA_TX_EN (0)
210210
#endif
211211

212+
#if defined(CONFIG_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN)
213+
#define DEFAULT_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN (CONFIG_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN)
214+
#else
215+
#define DEFAULT_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN (0)
216+
#endif
217+
212218
#ifdef CONFIG_BT_LE_HCI_INTERFACE_USE_UART
213219
#define HCI_UART_EN CONFIG_BT_LE_HCI_INTERFACE_USE_UART
214220
#else

components/bt/controller/esp32c6/Kconfig.in

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -977,3 +977,11 @@ menu "Scheduling Priority Level Config"
977977
default 2 if BT_LE_SYNC_SCHED_PRIO_HIGH_LEVEL
978978
default 1
979979
endmenu
980+
981+
config BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN
982+
bool "Enable Peripheral fast PDU reception during latency"
983+
default n
984+
help
985+
When this option is enabled, the Controller continues receiving PDUs
986+
In the next connection event instead of entering latency
987+
After a data packet is received.

components/bt/controller/esp32c6/bt.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ extern void esp_unregister_npl_funcs (void);
167167
extern void npl_freertos_mempool_deinit(void);
168168
extern uint32_t r_os_cputime_get32(void);
169169
extern uint32_t r_os_cputime_ticks_to_usecs(uint32_t ticks);
170-
extern void r_ble_lll_rfmgmt_set_sleep_cb(void *s_cb, void *w_cb, void *s_arg,
170+
extern void r_ble_lll_sleep_set_sleep_cb(void *s_cb, void *w_cb, void *s_arg,
171171
void *w_arg, uint32_t us_to_enabled);
172172
extern void r_ble_rtc_wake_up_state_clr(void);
173173
extern int os_msys_init(void);
@@ -848,10 +848,10 @@ esp_err_t controller_sleep_init(void)
848848
#ifdef CONFIG_BT_LE_SLEEP_ENABLE
849849
ESP_LOGW(NIMBLE_PORT_LOG_TAG, "BLE modem sleep is enabled");
850850
#if CONFIG_FREERTOS_USE_TICKLESS_IDLE
851-
r_ble_lll_rfmgmt_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
851+
r_ble_lll_sleep_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
852852
BLE_RTC_DELAY_US_LIGHT_SLEEP);
853853
#else
854-
r_ble_lll_rfmgmt_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
854+
r_ble_lll_sleep_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
855855
BLE_RTC_DELAY_US_MODEM_SLEEP);
856856
#endif /* FREERTOS_USE_TICKLESS_IDLE */
857857
#endif // CONFIG_BT_LE_SLEEP_ENABLE

components/bt/controller/esp32c6/esp_bt_cfg.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,12 @@ extern "C" {
212212
#define DEFAULT_BT_LE_CTRL_FAST_CONN_DATA_TX_EN (0)
213213
#endif
214214

215+
#if defined(CONFIG_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN)
216+
#define DEFAULT_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN (CONFIG_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN)
217+
#else
218+
#define DEFAULT_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN (0)
219+
#endif
220+
215221
#ifdef CONFIG_BT_LE_HCI_INTERFACE_USE_UART
216222
#define HCI_UART_EN CONFIG_BT_LE_HCI_INTERFACE_USE_UART
217223
#else

components/bt/controller/esp32h2/Kconfig.in

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -981,3 +981,11 @@ menu "Scheduling Priority Level Config"
981981
default 2 if BT_LE_SYNC_SCHED_PRIO_HIGH_LEVEL
982982
default 1
983983
endmenu
984+
985+
config BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN
986+
bool "Enable Peripheral fast PDU reception during latency"
987+
default n
988+
help
989+
When this option is enabled, the Controller continues receiving PDUs
990+
In the next connection event instead of entering latency
991+
After a data packet is received.

components/bt/controller/esp32h2/bt.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ extern void esp_unregister_npl_funcs (void);
159159
extern void npl_freertos_mempool_deinit(void);
160160
extern uint32_t r_os_cputime_get32(void);
161161
extern uint32_t r_os_cputime_ticks_to_usecs(uint32_t ticks);
162-
extern void r_ble_lll_rfmgmt_set_sleep_cb(void *s_cb, void *w_cb, void *s_arg,
162+
extern void r_ble_lll_sleep_set_sleep_cb(void *s_cb, void *w_cb, void *s_arg,
163163
void *w_arg, uint32_t us_to_enabled);
164164
extern void r_ble_rtc_wake_up_state_clr(void);
165165
extern int os_msys_init(void);
@@ -816,10 +816,10 @@ esp_err_t controller_sleep_init(void)
816816
#ifdef CONFIG_BT_LE_SLEEP_ENABLE
817817
ESP_LOGW(NIMBLE_PORT_LOG_TAG, "BLE modem sleep is enabled");
818818
#if CONFIG_FREERTOS_USE_TICKLESS_IDLE
819-
r_ble_lll_rfmgmt_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
819+
r_ble_lll_sleep_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
820820
BLE_RTC_DELAY_US_LIGHT_SLEEP);
821821
#else
822-
r_ble_lll_rfmgmt_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
822+
r_ble_lll_sleep_set_sleep_cb(controller_sleep_cb, controller_wakeup_cb, 0, 0,
823823
BLE_RTC_DELAY_US_MODEM_SLEEP);
824824
#endif /* FREERTOS_USE_TICKLESS_IDLE */
825825
#endif // CONFIG_BT_LE_SLEEP_ENABLE

components/bt/controller/esp32h2/esp_bt_cfg.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,12 @@ extern "C" {
209209
#define DEFAULT_BT_LE_CTRL_FAST_CONN_DATA_TX_EN (0)
210210
#endif
211211

212+
#if defined(CONFIG_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN)
213+
#define DEFAULT_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN (CONFIG_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN)
214+
#else
215+
#define DEFAULT_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN (0)
216+
#endif
217+
212218
#ifdef CONFIG_BT_LE_HCI_INTERFACE_USE_UART
213219
#define HCI_UART_EN CONFIG_BT_LE_HCI_INTERFACE_USE_UART
214220
#else

0 commit comments

Comments
 (0)