Skip to content

Commit f17dcb1

Browse files
committed
Bluetooth: Controller: Replace Kconfig select with depends
Replace use of `select` with `depends on` in the LL_SW_SPLIT Kconfig options. Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
1 parent 433893e commit f17dcb1

File tree

1 file changed

+49
-41
lines changed

1 file changed

+49
-41
lines changed

subsys/bluetooth/controller/Kconfig.ll_sw_split

Lines changed: 49 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,20 @@ config BT_LLL_VENDOR_NORDIC
6262
select BT_TICKER_REMAINDER_SUPPORT if !SOC_COMPATIBLE_NRF54LX
6363
select BT_TICKER_UPDATE if BT_BROADCASTER || BT_CONN || \
6464
(BT_OBSERVER && BT_CTLR_ADV_EXT)
65-
select BT_TICKER_START_REMAINDER if BT_TICKER_REMAINDER_SUPPORT && BT_CTLR_CENTRAL_ISO
65+
select BT_TICKER_START_REMAINDER if BT_TICKER_REMAINDER_SUPPORT && \
66+
BT_CTLR_CENTRAL_ISO
6667
select BT_TICKER_REMAINDER_GET if BT_TICKER_REMAINDER_SUPPORT && \
6768
(BT_BROADCASTER && BT_CTLR_ADV_EXT)
68-
select BT_TICKER_LAZY_GET if BT_CTLR_ADV_PERIODIC || BT_CTLR_CONN_ISO || BT_CTLR_SYNC_TRANSFER_SENDER
69-
69+
select BT_TICKER_LAZY_GET if BT_CTLR_ADV_PERIODIC || \
70+
BT_CTLR_CONN_ISO || \
71+
BT_CTLR_SYNC_TRANSFER_SENDER
72+
select BT_TICKER_NEXT_SLOT_GET if (BT_BROADCASTER && \
73+
BT_CTLR_ADV_EXT) || \
74+
BT_CENTRAL || BT_CTLR_CONN_ISO
75+
select BT_TICKER_NEXT_SLOT_GET_MATCH if (BT_BROADCASTER && \
76+
BT_CTLR_ADV_EXT) || \
77+
BT_CENTRAL || BT_CTLR_CONN_ISO
78+
select BT_TICKER_CNTR_FREE_RUNNING if SOC_COMPATIBLE_NRF54LX
7079
select BT_TICKER_PREFER_START_BEFORE_STOP if BT_TICKER_SLOT_AGNOSTIC
7180

7281
select BT_CTLR_ASSERT_OPTIMIZE_FOR_SIZE_SUPPORT if CPU_CORTEX_M
@@ -285,7 +294,7 @@ config BT_CTLR_CONN_ISO_AVOID_SEGMENTATION
285294
interface, the config provides a way to force the Max_PDU to Max_SDU +
286295
5 (header + offset).
287296

288-
choice
297+
choice BT_CTLR_CONN_ISO_POLICY_CHOICE
289298
prompt "CIS Creation Policy Selection"
290299
default BT_CTLR_CONN_ISO_RELIABILITY_POLICY
291300

@@ -356,7 +365,6 @@ config BT_CTLR_DATA_LENGTH_CLEAR
356365
config BT_CTLR_PHY_2M_NRF
357366
bool "2Mbps Nordic Semiconductor PHY Support (Cleartext only)"
358367
depends on SOC_SERIES_NRF51X
359-
select BT_CTLR_PHY_2M
360368
help
361369
Enable support for Nordic Semiconductor proprietary 2Mbps PHY in the
362370
Controller. Encrypted connections are not supported.
@@ -397,6 +405,7 @@ config BT_CTLR_ADV_PDU_LINK
397405
# Enables extra space in each advertising PDU to allow linking PDUs.
398406
# This is required to enable advertising data trains (i.e. transmission
399407
# of AUX_CHAIN_IND).
408+
depends on BT_CTLR_ADV_EXT && BT_BROADCASTER
400409
bool
401410

402411
config BT_CTLR_ADV_AUX_PDU_LINK
@@ -406,9 +415,8 @@ config BT_CTLR_ADV_AUX_PDU_LINK
406415

407416
config BT_CTLR_ADV_AUX_PDU_BACK2BACK
408417
bool "Back-to-back transmission of extended advertising trains"
409-
depends on BT_BROADCASTER && BT_CTLR_ADV_EXT
410418
select BT_CTLR_ADV_AUX_PDU_LINK
411-
default y if BT_CTLR_ADV_DATA_LEN_MAX > 191
419+
default y if BT_CTLR_ADV_DATA_CHAIN
412420
help
413421
Enables transmission of AUX_CHAIN_IND in extended advertising train by
414422
sending each AUX_CHAIN_IND one after another back-to-back.
@@ -429,8 +437,8 @@ config BT_CTLR_ADV_SYNC_PDU_LINK
429437

430438
config BT_CTLR_ADV_SYNC_PDU_BACK2BACK
431439
bool "Back-to-back transmission of periodic advertising trains"
432-
depends on BT_CTLR_ADV_PERIODIC
433440
select BT_CTLR_ADV_SYNC_PDU_LINK
441+
default y if BT_CTLR_ADV_PERIODIC && BT_CTLR_ADV_DATA_CHAIN
434442
help
435443
Enables transmission of AUX_CHAIN_IND in periodic advertising train by
436444
sending each AUX_CHAIN_IND one after another back-to-back.
@@ -697,7 +705,7 @@ config BT_CTLR_DYNAMIC_INTERRUPTS
697705
permit use of SoC's peripheral for custom use when Bluetooth is not
698706
enabled.
699707

700-
choice BT_CTLR_OPTIMIZE
708+
choice BT_CTLR_OPTIMIZE_CHOICE
701709
prompt "Optimization options"
702710
depends on !LTO
703711
default BT_CTLR_OPTIMIZE_FOR_SPEED
@@ -762,8 +770,8 @@ config BT_CTLR_SCHED_ADVANCED
762770
depends on BT_CTLR_SCHED_ADVANCED_SUPPORT && \
763771
(BT_CONN || \
764772
(BT_CTLR_ADV_EXT && (BT_CTLR_ADV_AUX_SET > 0)) || \
765-
BT_CTLR_ADV_ISO)
766-
select BT_TICKER_NEXT_SLOT_GET
773+
BT_CTLR_ADV_ISO) && \
774+
BT_TICKER_NEXT_SLOT_GET
767775
default y if BT_CENTRAL || (BT_BROADCASTER && BT_CTLR_ADV_EXT) || BT_CTLR_ADV_ISO
768776
help
769777
Enable non-overlapping placement of observer, initiator and central
@@ -907,7 +915,7 @@ config BT_CTLR_ULL_LOW_PRIO
907915

908916
config BT_CTLR_LOW_LAT
909917
bool "Low latency non-negotiating event preemption"
910-
select BT_CTLR_LOW_LAT_ULL_DONE
918+
depends on BT_CTLR_LOW_LAT_ULL && BT_CTLR_LOW_LAT_ULL_DONE
911919
default y if SOC_SERIES_NRF51X
912920
help
913921
Use low latency non-negotiating event preemption. This reduces
@@ -916,33 +924,32 @@ config BT_CTLR_LOW_LAT
916924
radio state switches.
917925

918926
config BT_CTLR_LOW_LAT_ULL
919-
prompt "Low latency ULL"
920-
bool
927+
bool "Low latency ULL"
928+
default y if SOC_SERIES_NRF51X
921929
help
922930
Low latency ULL implementation that uses tailchaining instead of while
923931
loop to demux rx messages from LLL.
924932

925933
config BT_CTLR_LOW_LAT_ULL_DONE
926-
prompt "Low latency ULL prepare dequeue"
927-
bool
934+
bool "Low latency ULL prepare dequeue"
935+
default y if SOC_SERIES_NRF51X
928936
help
929937
Done events be processed and dequeued in ULL context.
930938

931939
config BT_CTLR_CONN_META
932-
prompt "Connection meta data extension"
933-
bool
940+
bool "Connection meta data extension"
934941
help
935942
Enables vendor specific per-connection meta data as part of the
936943
LLL connection object.
937944

938945
config BT_CTLR_RX_PDU_META
939-
prompt "RX pdu meta data"
940-
bool
946+
bool "RX pdu meta data"
947+
help
948+
Enables vendor specific Rx PDU meta data as part of the Rx object.
941949

942950
config BT_CTLR_NRF_GRTC
943951
bool "Use nRF GRTC peripheral"
944-
depends on SOC_COMPATIBLE_NRF54LX
945-
select BT_TICKER_CNTR_FREE_RUNNING
952+
depends on BT_TICKER_CNTR_FREE_RUNNING && SOC_COMPATIBLE_NRF54LX
946953
default y
947954
help
948955
Enable use of nRF54Lx NRF_GRTC peripheral.
@@ -973,8 +980,9 @@ config BT_CTLR_NRF_GRTC_AUTOEN_DEFAULT
973980

974981
config BT_CTLR_RADIO_ENABLE_FAST
975982
bool "Use tTXEN/RXEN,FAST ramp-up"
976-
depends on SOC_COMPATIBLE_NRF52X || SOC_COMPATIBLE_NRF53X || SOC_COMPATIBLE_NRF54LX
977-
select BT_CTLR_SW_SWITCH_SINGLE_TIMER if SOC_COMPATIBLE_NRF54LX
983+
depends on SOC_COMPATIBLE_NRF52X || \
984+
SOC_COMPATIBLE_NRF53X || \
985+
SOC_COMPATIBLE_NRF54LX
978986
default y
979987
help
980988
Enable use of fast radio ramp-up mode.
@@ -988,15 +996,18 @@ config BT_CTLR_RADIO_TIMER_ISR
988996

989997
config BT_CTLR_TIFS_HW
990998
bool "H/w Accelerated tIFS Trx switching"
991-
depends on !BT_CTLR_RADIO_ENABLE_FAST && BT_CTLR_TIFS_HW_SUPPORT
999+
depends on BT_CTLR_TIFS_HW_SUPPORT && !BT_CTLR_RADIO_ENABLE_FAST
9921000
default y
9931001
help
9941002
Enable use of hardware accelerated tIFS Trx switching.
9951003

9961004
config BT_CTLR_SW_SWITCH_SINGLE_TIMER
9971005
bool "Single TIMER tIFS Trx SW switching"
998-
depends on (!BT_CTLR_TIFS_HW) && (SOC_COMPATIBLE_NRF52X || SOC_COMPATIBLE_NRF53X || \
999-
SOC_COMPATIBLE_NRF54LX)
1006+
depends on BT_CTLR_RADIO_ENABLE_FAST && \
1007+
(SOC_COMPATIBLE_NRF52X || \
1008+
SOC_COMPATIBLE_NRF53X || \
1009+
SOC_COMPATIBLE_NRF54LX)
1010+
default y if SOC_COMPATIBLE_NRF54LX
10001011
help
10011012
Implement the tIFS Trx SW switch with the same TIMER
10021013
instance, as the one used for Bluetooth event timing. Requires
@@ -1101,14 +1112,15 @@ config BT_CTLR_TX_RETRY_DISABLE
11011112

11021113
config BT_CTLR_TX_DEFER
11031114
bool "Deferred ACL Tx packet transmission setup"
1104-
select BT_CTLR_RADIO_TIMER_ISR
1115+
depends on BT_CTLR_RADIO_TIMER_ISR
11051116
help
11061117
Enable deferred ACL Tx packet transmission setup by radio, so that an
11071118
enqueued ACL Data packet by the upper layer can be transmitted with
11081119
the shortest latency.
11091120

11101121
config BT_CTLR_THROUGHPUT
11111122
bool "Measure incoming Tx throughput"
1123+
default y if BT_HCI_RAW
11121124
help
11131125
Measure incoming Tx throughput and log the results.
11141126

@@ -1128,9 +1140,8 @@ config BT_CTLR_FORCE_MD_COUNT
11281140

11291141
config BT_CTLR_FORCE_MD_AUTO
11301142
bool "Forced MD bit automatic calculation"
1131-
depends on !BT_CTLR_LOW_LAT
1132-
select BT_CTLR_THROUGHPUT
1133-
default y if BT_HCI_RAW
1143+
depends on BT_CTLR_THROUGHPUT && !BT_CTLR_LOW_LAT
1144+
default y
11341145
help
11351146
Force MD bit in transmitted PDU based on runtime incoming transmit
11361147
data throughput.
@@ -1267,18 +1278,16 @@ config BT_TICKER_NEXT_SLOT_GET
12671278

12681279
config BT_TICKER_REMAINDER_GET
12691280
bool "Ticker Next Slot Get with Remainder"
1270-
depends on BT_TICKER_REMAINDER_SUPPORT
1271-
select BT_TICKER_NEXT_SLOT_GET
1272-
select BT_TICKER_NEXT_SLOT_GET_MATCH
1281+
depends on BT_TICKER_REMAINDER_SUPPORT && BT_TICKER_NEXT_SLOT_GET && \
1282+
BT_TICKER_NEXT_SLOT_GET_MATCH
12731283
help
12741284
This option enables ticker interface to iterate through active
12751285
ticker nodes, returning tick to expire and remainder from a reference
12761286
tick.
12771287

12781288
config BT_TICKER_LAZY_GET
12791289
bool "Ticker Next Slot Get with Lazy"
1280-
select BT_TICKER_NEXT_SLOT_GET
1281-
select BT_TICKER_NEXT_SLOT_GET_MATCH
1290+
depends on BT_TICKER_NEXT_SLOT_GET && BT_TICKER_NEXT_SLOT_GET_MATCH
12821291
help
12831292
This option enables ticker interface to iterate through active
12841293
ticker nodes, returning tick to expire and lazy count from a reference
@@ -1314,7 +1323,7 @@ config BT_TICKER_EXT_SLOT_WINDOW_YIELD
13141323

13151324
config BT_TICKER_EXT_EXPIRE_INFO
13161325
bool "Ticker timeout with other ticker's expire information"
1317-
select BT_TICKER_EXT
1326+
depends on BT_TICKER_EXT
13181327
help
13191328
This option enables ticker to return expiration info. The extended
13201329
ticker interface) is used to ask for expiration information for
@@ -1361,7 +1370,7 @@ config BT_TICKER_PREFER_START_BEFORE_STOP
13611370

13621371
config BT_CTLR_JIT_SCHEDULING
13631372
bool "Just-in-Time Scheduling"
1364-
select BT_TICKER_SLOT_AGNOSTIC
1373+
depends on BT_TICKER_SLOT_AGNOSTIC
13651374
help
13661375
This option enables the experimental 'Next Generation' scheduling
13671376
feature, which eliminates priorities and collision resolving in the
@@ -1376,8 +1385,7 @@ config BT_CTLR_PERIPHERAL_ISO_EARLY_CIG_START
13761385
and hence adjust CIG offset and reference point ahead one interval.
13771386

13781387
config BT_CTLR_USER_EXT
1379-
prompt "Proprietary extensions in Controller"
1380-
bool
1388+
bool "Proprietary extensions in Controller"
13811389
help
13821390
Catch-all for enabling proprietary event types in Controller behavior.
13831391

@@ -1427,7 +1435,7 @@ config BT_CTLR_USER_CPR_ANCHOR_POINT_MOVE
14271435
endmenu
14281436

14291437
# Workaround to be able to have default for "choice" in hidden "menu" above
1430-
choice BT_CTLR_OPTIMIZE
1438+
choice BT_CTLR_OPTIMIZE_CHOICE
14311439
prompt "Optimization options"
14321440
depends on !LTO
14331441

0 commit comments

Comments
 (0)