1# Copyright (c) 2024 Nordic Semiconductor ASA
2# SPDX-License-Identifier: Apache-2.0
3
4config HAS_NRFS
5	bool
6
7menu "nRF Services"
8	depends on HAS_NRFS
9
10config NRFS_HAS_CLOCK_SERVICE
11	bool
12
13config NRFS_HAS_CONST_LATENCY_SERVICE
14	bool
15
16config NRFS_HAS_DIAG_SERVICE
17	bool
18
19config NRFS_HAS_DVFS_SERVICE
20	bool
21
22config NRFS_HAS_GDFS_SERVICE
23	bool
24
25config NRFS_HAS_GDPWR_SERVICE
26	bool
27
28config NRFS_HAS_MRAM_SERVICE
29	bool
30
31config NRFS_HAS_PMIC_SERVICE
32	bool
33
34config NRFS_HAS_RESET_SERVICE
35	bool
36
37config NRFS_HAS_TEMP_SERVICE
38	bool
39
40config NRFS_HAS_VBUS_DETECTOR_SERVICE
41	bool
42
43config NRFS
44	bool "nRF Services Support"
45	select NRFS_LOCAL_DOMAIN if SOC_NRF54H20_CPUAPP || \
46				    SOC_NRF54H20_CPURAD || \
47				    SOC_NRF9280_CPUAPP || \
48				    SOC_NRF9280_CPURAD
49	depends on HAS_NRFS
50	help
51	  This option enables the nRF Services library.
52
53if NRFS
54
55config NRFS_LOCAL_DOMAIN
56	bool "nRF Services Local Domain Support"
57	depends on $(dt_alias_enabled,ipc-to-cpusys)
58	select IPC_SERVICE
59	select MBOX
60	select EVENTS
61	select REBOOT
62	help
63	  This option enables the nRF Services Local Domain libraries.
64
65config NRFS_DVFS_LOCAL_DOMAIN
66	bool "Local domain that supports DVFS"
67	depends on NRFS_LOCAL_DOMAIN
68	depends on NRFS_DVFS_SERVICE_ENABLED
69	default y if NRFS_DVFS_SERVICE_ENABLED
70
71menu "Enabled Services"
72
73module = NRFS
74module-str = nRF-Services
75source "subsys/logging/Kconfig.template.log_config"
76
77config NRFS_RESET_SERVICE_ENABLED
78	bool "Reset service"
79	depends on NRFS_HAS_RESET_SERVICE
80
81config NRFS_MRAM_SERVICE_ENABLED
82	bool "MRAM latency service"
83	depends on NRFS_HAS_MRAM_SERVICE
84
85config NRFS_TEMP_SERVICE_ENABLED
86	bool "Temperature service"
87	depends on NRFS_HAS_TEMP_SERVICE
88	default y
89
90config NRFS_VBUS_DETECTOR_SERVICE_ENABLED
91	bool "VBUS detector for the USB peripheral"
92	depends on NRFS_HAS_VBUS_DETECTOR_SERVICE
93	default y
94
95config NRFS_CONST_LATENCY_SERVICE_ENABLED
96	bool "DPPI constant latency service"
97	depends on NRFS_HAS_CONST_LATENCY_SERVICE
98	default y
99
100config NRFS_PMIC_SERVICE_ENABLED
101	bool "PMIC service"
102	depends on NRFS_HAS_PMIC_SERVICE
103
104config NRFS_DVFS_SERVICE_ENABLED
105	bool "DVFS service"
106	depends on NRFS_HAS_DVFS_SERVICE
107	default y if SOC_NRF54H20_CPUAPP || SOC_NRF9280_CPUAPP
108
109config NRFS_DIAG_SERVICE_ENABLED
110	bool "System Diagnostics service (only for development purposes)"
111	depends on NRFS_HAS_DIAG_SERVICE
112
113config NRFS_CLOCK_SERVICE_ENABLED
114	bool "Clock service"
115	depends on NRFS_HAS_CLOCK_SERVICE
116	default y
117
118config NRFS_GDPWR_SERVICE_ENABLED
119	bool "Global domain power request service"
120	depends on NRFS_HAS_GDPWR_SERVICE
121	default y
122
123config NRFS_GDFS_SERVICE_ENABLED
124	bool "Global domain frequency scaling service"
125	depends on NRFS_HAS_GDFS_SERVICE
126	default y
127
128endmenu
129
130rsource "backends/Kconfig"
131if NRFS_DVFS_LOCAL_DOMAIN
132rsource "dvfs/Kconfig"
133endif # NRFS_DVFS_LOCAL_DOMAIN
134
135endif # NRFS
136endmenu
137