1# HW Info driver configuration options
2
3# Copyright (c) 2019 Alexander Wachter
4# SPDX-License-Identifier: Apache-2.0
5
6menuconfig HWINFO
7	bool "Hardware Information drivers"
8	help
9	  Enable hwinfo driver.
10
11if HWINFO
12
13module = HWINFO
14module-str = HWINFO
15source "subsys/logging/Kconfig.template.log_config"
16
17config HWINFO_HAS_DRIVER
18	bool
19	help
20	  This is an option enabled by individual drivers to signal that there is a hwinfo driver.
21
22config HWINFO_SHELL
23	bool "HWINFO Shell"
24	depends on SHELL
25	help
26	  Enable hwinfo Shell for testing.
27
28menuconfig HWINFO_CC13XX_CC26XX
29	bool "TI SimpleLink CC13xx/CC26xx hwinfo driver"
30	default y
31	depends on SOC_SERIES_CC13X2_CC26X2 || SOC_SERIES_CC13X2X7_CC26X2X7
32	select HWINFO_HAS_DRIVER
33	help
34	  Enable TI SimpleLink CC13xx/CC26xx hwinfo driver.
35
36if HWINFO_CC13XX_CC26XX
37
38config HWINFO_CC13XX_CC26XX_ALWAYS_USE_FACTORY_DEFAULT
39	bool "Ignore CCFG and always use factory value"
40	default y
41	help
42	  Always return factory pre-programmed values, stored in FCFG and ignore
43	  values provided in CCFG (Customer Configuration).
44
45choice
46	prompt "Select MAC address type for device ID"
47	default HWINFO_CC13XX_CC26XX_USE_IEEE_MAC
48	help
49	  Specify the MAC address type to be used as device ID by the driver.
50
51config HWINFO_CC13XX_CC26XX_USE_IEEE_MAC
52	bool "Use IEEE 802.15.4 extended address"
53	help
54	  Use 8-bytes length IEEE 802.15.4 extended address as device ID value.
55
56config HWINFO_CC13XX_CC26XX_USE_BLE_MAC
57	bool "Use BLE MAC address"
58	help
59	  Use 6-bytes length BLE MAC address as device ID value.
60
61endchoice
62
63endif # HWINFO_CC13XX_CC26XX
64
65config HWINFO_STM32
66	bool "STM32 hwinfo"
67	default y
68	depends on SOC_FAMILY_STM32 && !SOC_SERIES_STM32WB0X
69	select HWINFO_HAS_DRIVER
70	help
71	  Enable STM32 hwinfo driver.
72
73config HWINFO_NRF
74	bool "NRF device ID"
75	default y
76	depends on SOC_FAMILY_NORDIC_NRF
77	depends on SOC_SERIES_NRF54HX || NRF_SOC_SECURE_SUPPORTED
78	select HWINFO_HAS_DRIVER
79	help
80	  Enable Nordic NRF hwinfo driver.
81
82config HWINFO_MCUX_RCM
83	bool "NXP kinetis reset cause"
84	default y
85	depends on HAS_MCUX_RCM
86	select HWINFO_HAS_DRIVER
87	help
88	  Enable NXP kinetis mcux RCM hwinfo driver.
89
90config HWINFO_MCUX_SIM
91	bool "NXP kinetis SIM device ID"
92	default y
93	depends on HAS_MCUX_SIM
94	select HWINFO_HAS_DRIVER
95	help
96	  Enable NXP kinetis mcux SIM hwinfo driver.
97
98config HWINFO_MCUX_SRC
99	bool "NXP SRC reset cause"
100	default y
101	depends on HAS_MCUX_SRC
102	select HWINFO_HAS_DRIVER
103	help
104	  Enable NXP i.MX mcux SRC hwinfo driver.
105
106config HWINFO_MCUX_SRC_V2
107	bool "NXP SRC reset cause (multicore devices)"
108	default y
109	depends on HAS_MCUX_SRC_V2
110	select HWINFO_HAS_DRIVER
111	help
112	  Enable version 2 multicore NXP i.MX mcux SRC hwinfo driver.
113
114config HWINFO_MCUX_SYSCON
115	bool "NXP LPC device ID"
116	default y
117	depends on DT_HAS_NXP_LPC_UID_ENABLED
118	select HWINFO_HAS_DRIVER
119	help
120	  Enable NXP LPC mcux hwinfo driver.
121
122config HWINFO_IMXRT
123	bool "NXP i.mx RT device ID"
124	default y
125	depends on SOC_SERIES_IMXRT10XX || SOC_SERIES_IMXRT11XX
126	select HWINFO_HAS_DRIVER
127	help
128	  Enable NXP i.mx RT hwinfo driver.
129
130config HWINFO_RPI_PICO
131	bool "Raspberry Pi Pico hwinfo driver"
132	default y
133	depends on SOC_FAMILY_RPI_PICO
134	select HWINFO_HAS_DRIVER
135	select PICOSDK_USE_FLASH
136	help
137	  Enable Raspberry Pi Pico hwinfo driver.
138
139config HWINFO_SAM_RSTC
140	bool "Atmel SAM reset cause"
141	default y
142	depends on SOC_FAMILY_ATMEL_SAM && !SOC_SERIES_SAM4L
143	select HWINFO_HAS_DRIVER
144	help
145	  Enable Atmel SAM reset cause hwinfo driver.
146
147config HWINFO_SAM
148	bool "Atmel SAM device ID"
149	default y
150	depends on SOC_FAMILY_ATMEL_SAM && !SOC_SERIES_SAM4L
151	select HWINFO_HAS_DRIVER
152	help
153	  Enable Atmel SAM device ID hwinfo driver.
154
155config HWINFO_SAM4L
156	bool "Atmel SAM4L device ID"
157	default y
158	depends on SOC_SERIES_SAM4L
159	select HWINFO_HAS_DRIVER
160	help
161	  Enable Atmel SAM4L hwinfo driver.
162
163config HWINFO_SAM0
164	bool "Atmel SAM0 device ID"
165	default y
166	depends on SOC_FAMILY_ATMEL_SAM0
167	select HWINFO_HAS_DRIVER
168	help
169	  Enable Atmel SAM0 hwinfo driver.
170
171config HWINFO_SMARTBOND
172	bool "Smartbond device reset cause"
173	default y
174	depends on SOC_FAMILY_RENESAS_SMARTBOND
175	select HWINFO_HAS_DRIVER
176	help
177	  Enable Smartbond reset cause hwinfo driver.
178
179config HWINFO_ESP32
180	bool "ESP32 device ID"
181	default y
182	depends on SOC_FAMILY_ESPRESSIF_ESP32
183	select HWINFO_HAS_DRIVER
184	help
185	  Enable ESP32 hwinfo driver.
186
187config HWINFO_LITEX
188	bool "LiteX device ID"
189	default y
190	depends on SOC_LITEX_VEXRISCV
191	depends on DT_HAS_LITEX_DNA0_ENABLED
192	select HWINFO_HAS_DRIVER
193	help
194	  Enable LiteX hwinfo driver
195
196config HWINFO_PSOC6
197	bool "Cypress PSOC 6 unique device ID"
198	default y
199	depends on SOC_FAMILY_PSOC6_LEGACY
200	select HWINFO_HAS_DRIVER
201	help
202	  Enable Cypress PSOC 6 hwinfo driver.
203
204config HWINFO_GECKO
205	bool "GECKO hwinfo"
206	default y
207	depends on SOC_FAMILY_SILABS_S0 || SOC_FAMILY_SILABS_S1 || SOC_FAMILY_SILABS_S2
208	depends on !SOC_SERIES_EFR32MG21
209	depends on !SOC_SERIES_EFR32BG22
210	select HWINFO_HAS_DRIVER
211	select SOC_GECKO_RMU
212	help
213	  Enable Silabs GECKO hwinfo driver.
214
215config HWINFO_ANDES
216	bool "Andes system ID"
217	default y
218	depends on SOC_FAMILY_ANDES_V5
219	depends on SYSCON
220	select HWINFO_HAS_DRIVER
221	help
222	  Enable Andes hwinfo driver
223
224config HWINFO_RW61X
225	bool "RW61X hwinfo"
226	default y
227	depends on SOC_SERIES_RW6XX
228	select HWINFO_HAS_DRIVER
229	help
230	  Enable RW61X hwinfo driver
231
232config HWINFO_AMBIQ
233	bool "AMBIQ hwinfo"
234	default y
235	depends on SOC_SERIES_APOLLO4X
236	select HWINFO_HAS_DRIVER
237	select AMBIQ_HAL
238	select AMBIQ_HAL_USE_HWINFO
239	help
240	  Enable AMBIQ hwinfo driver
241
242config HWINFO_NUMAKER
243	bool "NuMaker hwinfo"
244	default y
245	depends on SOC_SERIES_M46X
246	select HWINFO_HAS_DRIVER
247	select HAS_NUMAKER_FMC
248	help
249	  Enable Nuvoton NuMaker hwinfo driver
250
251config HWINFO_NUMAKER_RMC
252	bool "NuMaker hwinfo backed up by RMC"
253	default y
254	depends on SOC_SERIES_M2L31X
255	select HWINFO_HAS_DRIVER
256	select HAS_NUMAKER_RMC
257	help
258	  Enable Nuvoton NuMaker hwinfo driver backed up by RMC
259
260endif
261