CONFIG_BT_CTLR_SW_SWITCH_SINGLE_TIMER
Single TIMER tIFS Trx SW switching
Type: bool
Help
Implement the tIFS Trx SW switch with the same TIMER
instance, as the one used for BLE event timing. Requires
SW switching be enabled. Using a single TIMER:
(+) frees up one TIMER instance
(+) removes jitter for HCTO implementation
(-) introduces drifting to the absolute time inside BLE
events, that increases linearly with the number of
packets exchanged in the event
(-) makes it impossible to use most of the pre-programmed
PPI channels for the controller, resulting in 4 channels
less left for other uses
Direct dependencies
!BT_CTLR_TIFS_HW
&& (SOC_COMPATIBLE_NRF52X
|| SOC_SERIES_NRF53X
) && BT_LL_SW_SPLIT
&& BT_CTLR
&& BT_HCI
&& BT
(Includes any dependencies from ifs and menus.)
Defaults
No defaults. Implicitly defaults to n
.
Kconfig definition
At <Zephyr>/subsys/bluetooth/controller/Kconfig.ll_sw_split:458
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:44
→ <Zephyr>/subsys/Kconfig:9
→ <Zephyr>/subsys/bluetooth/Kconfig:181
→ <Zephyr>/subsys/bluetooth/controller/Kconfig:790
Menu path: (Top) → Sub Systems and OS Services → Bluetooth → Bluetooth Controller → Advanced features
config BT_CTLR_SW_SWITCH_SINGLE_TIMER
bool "Single TIMER tIFS Trx SW switching" if BT_CTLR_ADVANCED_FEATURES
depends on !BT_CTLR_TIFS_HW && (SOC_COMPATIBLE_NRF52X || SOC_SERIES_NRF53X) && BT_LL_SW_SPLIT && BT_CTLR && BT_HCI && BT
help
Implement the tIFS Trx SW switch with the same TIMER
instance, as the one used for BLE event timing. Requires
SW switching be enabled. Using a single TIMER:
(+) frees up one TIMER instance
(+) removes jitter for HCTO implementation
(-) introduces drifting to the absolute time inside BLE
events, that increases linearly with the number of
packets exchanged in the event
(-) makes it impossible to use most of the pre-programmed
PPI channels for the controller, resulting in 4 channels
less left for other uses
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)