Skip to content

Commit 573a329

Browse files
committed
Bluetooth: Services: Refactor bluetooth services Kconfig
Refactor bluetooth services define. This avoids having to update a long list of OR statements in CMakeLists.txt everytime a new service is added. Follow pattern established by bluetooth mesh, this would allow us to have a kconfig option for common services code as well, similar to model_util.c Signed-off-by: Joakim Andersson <[email protected]>
1 parent a08bea4 commit 573a329

File tree

14 files changed

+37
-36
lines changed

14 files changed

+37
-36
lines changed

subsys/bluetooth/CMakeLists.txt

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,6 @@ zephyr_sources_ifdef(CONFIG_BT_SCAN scan.c)
1010
zephyr_sources_ifdef(CONFIG_BT_CONN_CTX conn_ctx.c)
1111

1212
add_subdirectory_ifdef(CONFIG_BT_LL_NRFXLIB controller)
13-
add_subdirectory_ifdef(CONFIG_BT_MESH_NORDIC_MODELS mesh)
13+
add_subdirectory_ifdef(CONFIG_BT_MESH_NRF_MODELS mesh)
1414

15-
if (CONFIG_BT_GATT_BAS_C OR
16-
CONFIG_BT_GATT_DFU_SMP_C OR
17-
CONFIG_BT_GATT_HIDS OR
18-
CONFIG_BT_GATT_HIDS_C OR
19-
CONFIG_BT_GATT_LBS OR
20-
CONFIG_BT_GATT_NUS OR
21-
CONFIG_BT_GATT_NUS_C OR
22-
CONFIG_BT_GATT_LATENCY OR
23-
CONFIG_BT_GATT_LATENCY_C OR
24-
CONFIG_BT_GATT_THROUGHPUT)
25-
add_subdirectory(services)
26-
endif()
15+
add_subdirectory_ifdef(CONFIG_BT_NRF_SERVICES services)

subsys/bluetooth/mesh/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
55
#
66

7-
zephyr_sources_ifdef(CONFIG_BT_MESH_NORDIC_MODELS model_utils.c)
7+
zephyr_sources(model_utils.c)
88

99
zephyr_sources_ifdef(CONFIG_BT_MESH_ONOFF_SRV gen_onoff_srv.c)
1010
zephyr_sources_ifdef(CONFIG_BT_MESH_ONOFF_CLI gen_onoff_cli.c)

subsys/bluetooth/mesh/Kconfig

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -8,42 +8,42 @@ if BT_MESH
88

99
menu "nRF BT Mesh Models"
1010

11-
config BT_MESH_NORDIC_MODELS
12-
bool "nRF BT Mesh Model support"
11+
config BT_MESH_NRF_MODELS
12+
bool
1313
help
1414
Common Mesh model support modules, required by all Nordic BT Mesh
1515
models.
1616

1717

1818
config BT_MESH_ONOFF_SRV
1919
bool "Generic OnOff Server"
20-
select BT_MESH_NORDIC_MODELS
20+
select BT_MESH_NRF_MODELS
2121
help
2222
Enable Mesh Generic OnOff Server model.
2323

2424
config BT_MESH_ONOFF_CLI
2525
bool "Generic OnOff Client"
26-
select BT_MESH_NORDIC_MODELS
26+
select BT_MESH_NRF_MODELS
2727
help
2828
Enable Mesh Generic OnOff Client model.
2929

3030

3131
config BT_MESH_LVL_SRV
3232
bool "Generic Level Server"
33-
select BT_MESH_NORDIC_MODELS
33+
select BT_MESH_NRF_MODELS
3434
help
3535
Enable Mesh Generic Level Server model.
3636

3737
config BT_MESH_LVL_CLI
3838
bool "Generic Level Client"
39-
select BT_MESH_NORDIC_MODELS
39+
select BT_MESH_NRF_MODELS
4040
help
4141
Enable Mesh Generic Level Client model.
4242

4343

4444
menuconfig BT_MESH_DTT_SRV
4545
bool "Generic Default Transition Time Server"
46-
select BT_MESH_NORDIC_MODELS
46+
select BT_MESH_NRF_MODELS
4747
help
4848
Enable Mesh Generic Default Transition Time Server model.
4949

@@ -59,14 +59,14 @@ endif
5959

6060
config BT_MESH_DTT_CLI
6161
bool "Generic Default Transition Time Client"
62-
select BT_MESH_NORDIC_MODELS
62+
select BT_MESH_NRF_MODELS
6363
help
6464
Enable Mesh Generic Default Transition Time Client model.
6565

6666

6767
config BT_MESH_PONOFF_SRV
6868
bool "Generic Power OnOff Server"
69-
select BT_MESH_NORDIC_MODELS
69+
select BT_MESH_NRF_MODELS
7070
select BT_MESH_DTT_SRV
7171
select BT_MESH_ONOFF_SRV
7272
imply BT_SETTINGS
@@ -75,60 +75,60 @@ config BT_MESH_PONOFF_SRV
7575

7676
config BT_MESH_PONOFF_CLI
7777
bool "Generic Power OnOff Client"
78-
select BT_MESH_NORDIC_MODELS
78+
select BT_MESH_NRF_MODELS
7979
help
8080
Enable Mesh Generic Power OnOff Client model.
8181

8282

8383
config BT_MESH_PLVL_SRV
8484
bool "Generic Power Level Server"
85-
select BT_MESH_NORDIC_MODELS
85+
select BT_MESH_NRF_MODELS
8686
select BT_MESH_LVL_SRV
8787
select BT_MESH_PONOFF_SRV
8888
help
8989
Enable Mesh Generic Power Level Server model.
9090

9191
config BT_MESH_PLVL_CLI
9292
bool "Generic Power Level Client"
93-
select BT_MESH_NORDIC_MODELS
93+
select BT_MESH_NRF_MODELS
9494
help
9595
Enable Mesh Generic Power Level Client model.
9696

9797

9898
config BT_MESH_BATTERY_SRV
9999
bool "Generic Battery Server"
100-
select BT_MESH_NORDIC_MODELS
100+
select BT_MESH_NRF_MODELS
101101
help
102102
Enable Mesh Generic Battery Server model.
103103

104104
config BT_MESH_BATTERY_CLI
105105
bool "Generic Battery Client"
106-
select BT_MESH_NORDIC_MODELS
106+
select BT_MESH_NRF_MODELS
107107
help
108108
Enable Mesh Generic Battery Client model.
109109

110110

111111
config BT_MESH_LOC_SRV
112112
bool "Generic Location Server"
113-
select BT_MESH_NORDIC_MODELS
113+
select BT_MESH_NRF_MODELS
114114
help
115115
Enable Mesh Generic Location Server model.
116116

117117
config BT_MESH_LOC_CLI
118118
bool "Generic Location Client"
119-
select BT_MESH_NORDIC_MODELS
119+
select BT_MESH_NRF_MODELS
120120
help
121121
Enable Mesh Generic Location Client model.
122122

123123
config BT_MESH_PROP_SRV
124124
bool "Generic Property Server"
125-
select BT_MESH_NORDIC_MODELS
125+
select BT_MESH_NRF_MODELS
126126
help
127127
Enable Mesh Generic Property Server models.
128128

129129
config BT_MESH_PROP_CLI
130130
bool "Generic Property Client"
131-
select BT_MESH_NORDIC_MODELS
131+
select BT_MESH_NRF_MODELS
132132
help
133133
Enable Mesh Generic Property Client models.
134134

subsys/bluetooth/services/Kconfig

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,11 @@
44
# SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
55
#
66

7-
comment "BLE GATT Services"
7+
config BT_NRF_SERVICES
8+
bool
9+
help
10+
Common Bluetooth GATT Services support modules, required by all Nordic
11+
Services.
812

913
rsource "Kconfig.bas_c"
1014
rsource "Kconfig.dfu_smp_c"

subsys/bluetooth/services/Kconfig.bas_c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
menuconfig BT_GATT_BAS_C
88
bool "Battery service client"
9+
select BT_NRF_SERVICES
910
help
1011
Enable Battery Service Client.
1112

subsys/bluetooth/services/Kconfig.dfu_smp_c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
menuconfig BT_GATT_DFU_SMP_C
88
bool "DFU SMP service client"
9+
select BT_NRF_SERVICES
910
help
1011
Enable GATT DFU SMP Service Client.
1112

subsys/bluetooth/services/Kconfig.hids

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
menuconfig BT_GATT_HIDS
88
bool "Human Interface Device service"
9+
select BT_NRF_SERVICES
910
select BT_GATT_POOL
1011
select BT_GATT_DYNAMIC_DB
1112
help

subsys/bluetooth/services/Kconfig.hids_c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
menuconfig BT_GATT_HIDS_C
88
bool "HID service client"
9+
select BT_NRF_SERVICES
910
help
1011
Enable HID GATT Human Interface Device service client.
1112

subsys/bluetooth/services/Kconfig.latency

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
config BT_GATT_LATENCY
88
bool "Latency service"
9+
select BT_NRF_SERVICES
910
help
1011
Enable Nordic GATT Latency BLE service.
1112

subsys/bluetooth/services/Kconfig.latency_c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
config BT_GATT_LATENCY_C
88
bool "Latency service client"
9+
select BT_NRF_SERVICES
910
select BT_GATT_DM
1011
select BT_GATT_CLIENT
1112
help

0 commit comments

Comments
 (0)