Bluetooth: controller: Add radio fast ramp feature
Added implementation to use nRF radio's fast ramp up mode. Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
This commit is contained in:
parent
cd1fd05778
commit
46f9489704
5 changed files with 23 additions and 2 deletions
|
@ -284,8 +284,16 @@ config BLUETOOTH_CONTROLLER_SCHED_ADVANCED
|
|||
Disabling this feature will lead to overlapping role in timespace
|
||||
leading to skipped events amongst active roles.
|
||||
|
||||
config BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST
|
||||
bool "Use tTXEN/RXEN,FAST ramp-up"
|
||||
depends on SOC_SERIES_NRF52X
|
||||
default y if SOC_NRF52840
|
||||
help
|
||||
Enable use of fast radio ramp-up mode.
|
||||
|
||||
config BLUETOOTH_CONTROLLER_TIFS_HW
|
||||
bool "H/w Accelerated tIFS Trx switching"
|
||||
depends on !BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST
|
||||
default y
|
||||
help
|
||||
Enable use of hardware accelerated tIFS Trx switching.
|
||||
|
|
|
@ -93,6 +93,12 @@ void radio_phy_set(u8_t phy, u8_t flags)
|
|||
}
|
||||
|
||||
NRF_RADIO->MODE = (mode << RADIO_MODE_MODE_Pos) & RADIO_MODE_MODE_Msk;
|
||||
|
||||
#if defined(CONFIG_BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST)
|
||||
NRF_RADIO->MODECNF0 |= (RADIO_MODECNF0_RU_Fast <<
|
||||
RADIO_MODECNF0_RU_Pos) &
|
||||
RADIO_MODECNF0_RU_Msk;
|
||||
#endif /* CONFIG_BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST */
|
||||
}
|
||||
|
||||
void radio_tx_power_set(u32_t power)
|
||||
|
@ -211,7 +217,9 @@ u32_t radio_tx_ready_delay_get(u8_t phy, u8_t flags)
|
|||
#if defined(CONFIG_SOC_SERIES_NRF51X)
|
||||
return 140;
|
||||
#elif defined(CONFIG_SOC_SERIES_NRF52X)
|
||||
#if defined(CONFIG_SOC_NRF52840)
|
||||
#if defined(CONFIG_BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST)
|
||||
return 40;
|
||||
#elif defined(CONFIG_SOC_NRF52840)
|
||||
switch (phy) {
|
||||
default:
|
||||
#if defined(CONFIG_BLUETOOTH_CONTROLLER_TIFS_HW)
|
||||
|
@ -272,7 +280,9 @@ u32_t radio_rx_ready_delay_get(u8_t phy)
|
|||
#if defined(CONFIG_SOC_SERIES_NRF51X)
|
||||
return 138;
|
||||
#elif defined(CONFIG_SOC_SERIES_NRF52X)
|
||||
#if defined(CONFIG_SOC_NRF52840)
|
||||
#if defined(CONFIG_BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST)
|
||||
return 40;
|
||||
#elif defined(CONFIG_SOC_NRF52840)
|
||||
switch (phy) {
|
||||
default:
|
||||
#if defined(CONFIG_BLUETOOTH_CONTROLLER_TIFS_HW)
|
||||
|
|
|
@ -12,6 +12,7 @@ CONFIG_BLUETOOTH_CONTROLLER_PHY=n
|
|||
CONFIG_BLUETOOTH_CONTROLLER_CHAN_SEL_2=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_ADV_EXT=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_TIFS_HW=y
|
||||
CONFIG_BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_FAST_ENC=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_CONN_RSSI=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_ADV_INDICATION=n
|
||||
|
|
|
@ -15,6 +15,7 @@ CONFIG_BLUETOOTH_CONTROLLER_PHY_CODED=y
|
|||
CONFIG_BLUETOOTH_CONTROLLER_CHAN_SEL_2=y
|
||||
CONFIG_BLUETOOTH_CONTROLLER_ADV_EXT=y
|
||||
CONFIG_BLUETOOTH_CONTROLLER_TIFS_HW=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST=y
|
||||
CONFIG_BLUETOOTH_CONTROLLER_FAST_ENC=y
|
||||
CONFIG_BLUETOOTH_CONTROLLER_CONN_RSSI=y
|
||||
CONFIG_BLUETOOTH_CONTROLLER_ADV_INDICATION=y
|
||||
|
|
|
@ -12,6 +12,7 @@ CONFIG_BLUETOOTH_CONTROLLER_PHY=n
|
|||
CONFIG_BLUETOOTH_CONTROLLER_CHAN_SEL_2=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_ADV_EXT=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_TIFS_HW=y
|
||||
CONFIG_BLUETOOTH_CONTROLLER_RADIO_ENABLE_FAST=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_FAST_ENC=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_CONN_RSSI=n
|
||||
CONFIG_BLUETOOTH_CONTROLLER_ADV_INDICATION=n
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue