1# STM32CUBE HAL config
2
3# Copyright (c) 2016 Linaro Limited.
4# SPDX-License-Identifier: Apache-2.0
5
6config HAS_STM32LIB
7	bool
8
9config HAS_STM32CUBE
10	bool
11	select HAS_CMSIS_CORE
12	depends on SOC_FAMILY_STM32
13
14if HAS_STM32CUBE
15
16config USE_STM32_HAL_ADC
17	bool
18	help
19	  Enable STM32Cube Analog-to-Digital Converter (ADC) HAL module driver
20
21config USE_STM32_HAL_ADC_EX
22	bool
23	help
24	  Enable STM32Cube Extended Analog-to-Digital Converter (ADC) HAL
25	  module driver
26
27config USE_STM32_HAL_CAN
28	bool
29	help
30	  Enable STM32Cube Controller Area Network (CAN) HAL module driver
31
32config USE_STM32_HAL_CEC
33	bool
34	help
35	  Enable STM32Cube HDMI-CEC controller (CEC) HAL module driver
36
37config USE_STM32_HAL_COMP
38	bool
39	help
40	  Enable STM32Cube Ultra Low Power Comparator channels (COMP) HAL module
41	  driver
42
43config USE_STM32_HAL_CORTEX
44	bool
45	help
46	  Enable STM32Cube CORTEX HAL module driver
47
48config USE_STM32_HAL_CRC
49	bool
50	help
51	  Enable STM32Cube Cyclic redundancy check calculation unit (CRC) HAL
52	  module driver
53
54config USE_STM32_HAL_CRC_EX
55	bool
56	help
57	  Enable STM32Cube Extended Cyclic redundancy check calculation unit
58	  (CRC) HAL module driver
59
60config USE_STM32_HAL_CRYP
61	bool
62	help
63	  Enable STM32Cube Cryptographic processor (CRYP) HAL module driver
64
65config USE_STM32_HAL_CRYP_EX
66	bool
67	help
68	  Enable STM32Cube Extended Cryptographic processor (CRYP) HAL module
69	  driver
70
71config USE_STM32_HAL_DAC
72	bool
73	help
74	  Enable STM32Cube Digital-to-analog converter (DAC) HAL module driver
75
76config USE_STM32_HAL_DAC_EX
77	bool
78	help
79	  Enable STM32Cube Extended Digital-to-analog converter (DAC) HAL module
80	  driver
81
82config USE_STM32_HAL_DCMI
83	bool
84	help
85	  Enable STM32Cube Digital camera interface (DCM) HAL module driver
86
87config USE_STM32_HAL_DCMI_EX
88	bool
89	help
90	  Enable STM32Cube Extended Digital camera interface (DCM) HAL module
91	  driver
92
93config USE_STM32_HAL_DFSDM
94	bool
95	help
96	  Enable STM32Cube Digital filter for sigma delta modulators (DFSDM) HAL
97	  module driver
98
99config USE_STM32_HAL_DFSDM_EX
100	bool
101	help
102	  Enable STM32Cube Extended Digital filter for sigma delta modulators
103	  (DFSDM) HAL module driver
104
105config USE_STM32_HAL_DMA
106	bool
107	help
108	  Enable STM32Cube Direct Memory Access controller (DMA) HAL module
109	  driver
110
111config USE_STM32_HAL_DMA2D
112	bool
113	help
114	  Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) HAL module
115	  driver
116
117config USE_STM32_HAL_DMA_EX
118	bool
119	help
120	  Enable STM32Cube Extended Direct Memory Access controller (DMA) HAL
121	  module driver
122
123config USE_STM32_HAL_DSI
124	bool
125	help
126	  Enable STM32Cube Display Serial Interface Host (DSI) HAL module driver
127
128config USE_STM32_HAL_ETH
129	bool
130	help
131	  Enable STM32Cube Ethernet (ETH) HAL module driver
132
133config USE_STM32_HAL_ETH_EX
134	bool
135	help
136	  Enable STM32Cube Extended Ethernet (ETH) HAL module driver
137
138config USE_STM32_HAL_EXTI
139	bool
140	help
141	  Enable STM32Cube Extended interrupt and event controller (EXTI) HAL
142	  module driver
143
144config USE_STM32_HAL_FDCAN
145	bool
146	help
147	  Enable STM32Cube Controller area network with flexible data rate
148	  (FDCAN) HAL module driver
149
150config USE_STM32_HAL_FIREWALL
151	bool
152	help
153	  Enable STM32Cube Firewall HAL module driver
154
155config USE_STM32_HAL_FLASH
156	bool
157	help
158	  Enable STM32Cube Embedded Flash Memory (FLASH) HAL module driver
159
160config USE_STM32_HAL_FLASH_EX
161	bool
162	help
163	  Enable STM32Cube Extended Embedded Flash Memory (FLASH) HAL module
164	  driver
165
166config USE_STM32_HAL_FLASH_RAMFUNC
167	bool
168	help
169	  Enable STM32Cube Embedded Flash Memory RAM functions (FLASH_RAMFUNC)
170	  HAL module driver
171
172config USE_STM32_HAL_FMAC
173	bool
174	help
175	  Enable STM32Cube Filter Math Accelerator (FMAC) HAL module driver
176
177config USE_STM32_HAL_FMPI2C
178	bool
179	help
180	  Enable STM32Cube Fast-mode Plus Inter-integrated circuit (FMPI2C)
181	  HAL module driver
182
183config USE_STM32_HAL_FMPI2C_EX
184	bool
185	help
186	  Enable STM32Cube Extended Fast-mode Plus Inter-integrated circuit
187	  (FMPI2C) HAL module driver
188
189config USE_STM32_HAL_GFXMMU
190	bool
191	help
192	  Enable STM32Cube Chrom-GRCTM (GFXMMU) HAL module driver
193
194config USE_STM32_HAL_GPIO
195	bool
196	help
197	  Enable STM32Cube General-purpose I/Os (GPIO) HAL module driver
198
199config USE_STM32_HAL_GPIO_EX
200	bool
201	help
202	  Enable STM32Cube Extended General-purpose I/Os (GPIO) HAL module
203	  driver
204
205config USE_STM32_HAL_HASH
206	bool
207	help
208	  Enable STM32Cube Hash processor (HASH) HAL module driver
209
210config USE_STM32_HAL_HASH_EX
211	bool
212	help
213	  Enable STM32Cube Extended Hash processor (HASH) HAL module driver
214
215config USE_STM32_HAL_HCD
216	bool
217	help
218	  Enable STM32Cube Host Controller device (HCD) HAL module driver
219
220config USE_STM32_HAL_HRTIM
221	bool
222	help
223	  Enable STM32Cube High-Resolution Timer (HRTIM) HAL module driver
224
225config USE_STM32_HAL_HSEM
226	bool
227	help
228	  Enable STM32Cube Hardware Semaphore (HSEM) HAL module driver
229
230config USE_STM32_HAL_I2C
231	bool
232	help
233	  Enable STM32Cube Inter-integrated circuit (I2C) interface HAL module
234	  driver
235
236config USE_STM32_HAL_I2C_EX
237	bool
238	help
239	  Enable STM32Cube Extended Inter-integrated circuit (I2C) interface HAL
240	  module driver
241
242config USE_STM32_HAL_I2S
243	bool
244	help
245	  Enable STM32Cube Inter-IC sound (I2S) HAL module driver
246
247config USE_STM32_HAL_I2S_EX
248	bool
249	help
250	  Enable STM32Cube Etxended Inter-IC sound (I2S) HAL module driver
251
252config USE_STM32_HAL_IPCC
253	bool
254	help
255	  Enable STM32Cube Inter-Processor communication controller (IPCC) HAL
256	  module driver
257
258config USE_STM32_HAL_IRDA
259	bool
260	help
261	  Enable STM32Cube Infrared Data Association (IRDA) HAL module driver
262
263config USE_STM32_HAL_IWDG
264	bool
265	help
266	  Enable STM32Cube Independent watchdog (IWDG) HAL module driver
267
268config USE_STM32_HAL_JPEG
269	bool
270	help
271	  Enable STM32Cube Jpeg codec (JPEG) HAL module driver
272
273config USE_STM32_HAL_LCD
274	bool
275	help
276	  Enable STM32Cube LCD controller (LCD) HAL module driver
277
278config USE_STM32_HAL_LPTIM
279	bool
280	help
281	  Enable STM32Cube Low Power Timer (LPTIM) HAL module driver
282
283config USE_STM32_HAL_LTDC
284	bool
285	help
286	  Enable STM32Cube LCD-TFT controller (LTDC) HAL module driver
287
288config USE_STM32_HAL_LTDC_EX
289	bool
290	help
291	  Enable STM32Cube Extended LCD-TFT controller (LTDC) HAL module driver
292
293config USE_STM32_HAL_MDIOS
294	bool
295	help
296	  Enable STM32Cube Management data input/output (MDIOS) HAL module
297	  driver
298
299config USE_STM32_HAL_MDMA
300	bool
301	help
302	  Enable STM32Cube Master Direct Memory Access controller (MDMA) HAL
303	  module driver
304
305config USE_STM32_HAL_MMC
306	bool
307	help
308	  Enable STM32Cube MultiMediaCard interface (SDMMC) HAL module driver
309
310config USE_STM32_HAL_MMC_EX
311	bool
312	help
313	  Enable STM32Cube Extended MultiMediaCard interface (SDMMC) HAL module
314	  driver
315
316config USE_STM32_HAL_NAND
317	bool
318	help
319	  Enable STM32Cube NAND Controller (NAND) HAL module driver
320
321config USE_STM32_HAL_NOR
322	bool
323	help
324	  Enable STM32Cube NOR Controller (NOR) HAL module driver
325
326config USE_STM32_HAL_OPAMP
327	bool
328	help
329	  Enable STM32Cube Operational amplifiers (OPAMP) HAL module driver
330
331config USE_STM32_HAL_OPAMP_EX
332	bool
333	help
334	  Enable STM32Cube Extended Operational amplifiers (OPAMP) HAL module
335	  driver
336
337config USE_STM32_HAL_OSPI
338	bool
339	help
340	  Enable STM32Cube Octo-SPI interface (OSPI) HAL module driver
341
342config USE_STM32_HAL_PCCARD
343	bool
344	help
345	  Enable STM32Cube PCCard memories (PCCARD) HAL module driver
346
347config USE_STM32_HAL_PCD
348	bool
349	help
350	  Enable STM32Cube USB Peripheral Controller (PCD) HAL module driver
351
352config USE_STM32_HAL_PCD_EX
353	bool
354	help
355	  Enable STM32Cube Extended USB Peripheral Controller (PCD) HAL module
356	  driver
357
358config USE_STM32_HAL_PSSI
359	bool
360	help
361	  Enable STM32Cube Parallel Synchronous Slave Interface (PSSI)
362	  HAL module driver
363
364config USE_STM32_HAL_PWR
365	bool
366	help
367	  Enable STM32Cube Power control (PWR) HAL module driver
368
369config USE_STM32_HAL_PWR_EX
370	bool
371	help
372	  Enable STM32Cube Extended Power control (PWR) HAL module driver
373
374config USE_STM32_HAL_QSPI
375	bool
376	help
377	  Enable STM32Cube Quad-SPI interface (QSPI) HAL module driver
378
379config USE_STM32_HAL_RAMECC
380	bool
381	help
382	  Enable STM32Cube RAM ECC monitoring (RAMECC) HAL module driver
383
384config USE_STM32_HAL_RNG
385	bool
386	help
387	  Enable STM32Cube True random number generator (RNG) HAL module driver
388
389config USE_STM32_HAL_RTC
390	bool
391	help
392	  Enable STM32Cube Real-time clock (RTC) HAL module driver
393
394config USE_STM32_HAL_RTC_EX
395	bool
396	help
397	  Enable STM32Cube Extended Real-time clock (RTC) HAL module driver
398
399config USE_STM32_HAL_SAI
400	bool
401	help
402	  Enable STM32Cube Serial audio interface (SAI) HAL module driver
403
404config USE_STM32_HAL_SAI_EX
405	bool
406	help
407	  Enable STM32Cube Extended Serial audio interface (SAI) HAL module
408	  driver
409
410config USE_STM32_HAL_SD
411	bool
412	help
413	  Enable STM32Cube Secure digital input/output MultiMediaCard interface
414	  (SDMMC) HAL module driver
415
416config USE_STM32_HAL_SD_EX
417	bool
418	help
419	  Enable STM32Cube Extended Secure digital input/output MultiMediaCard
420	  interface (SDMMC) HAL module driver
421
422config USE_STM32_HAL_SDADC
423	bool
424	help
425	  Enable STM32Cube SDADC HAL module driver
426
427config USE_STM32_HAL_SDRAM
428	bool
429	help
430	  Enable STM32Cube SDRAM controller (SDRAM) HAL module driver
431
432config USE_STM32_HAL_SMARTCARD
433	bool
434	help
435	  Enable STM32Cube Smartcard controller (SMARTCARD) HAL module driver
436
437config USE_STM32_HAL_SMARTCARD_EX
438	bool
439	help
440	  Enable STM32Cube Extended Smartcard controller (SMARTCARD) HAL module
441	  driver
442
443config USE_STM32_HAL_SMBUS
444	bool
445	help
446	  Enable STM32Cube System Management Bus (SMBus) HAL module driver
447
448config USE_STM32_HAL_SPDIFRX
449	bool
450	help
451	  Enable STM32Cube SPDIF receiver interface (SPDIFRX) HAL module driver
452
453config USE_STM32_HAL_SPI
454	bool
455	help
456	  Enable STM32Cube Serial peripheral interface (SPI) HAL module driver
457
458config USE_STM32_HAL_SPI_EX
459	bool
460	help
461	  Enable STM32Cube Extended Serial peripheral interface (SPI) HAL module
462	  driver
463
464config USE_STM32_HAL_SRAM
465	bool
466	help
467	  Enable STM32Cube SRAM controller (SRAM) HAL module driver
468
469config USE_STM32_HAL_SWPMI
470	bool
471	help
472	  Enable STM32Cube Single Wire Protocol Master Interface (SWPMI) HAL
473	  module
474
475config USE_STM32_HAL_TIM
476	bool
477	help
478	  Enable STM32Cube Timer (TIM) HAL module driver
479
480config USE_STM32_HAL_TIM_EX
481	bool
482	help
483	  Enable STM32Cube Extended Timer (TIM) HAL module driver
484
485config USE_STM32_HAL_TSC
486	bool
487	help
488	  Enable STM32Cube Touch sensing controller (TSC) HAL module driver
489
490config USE_STM32_HAL_UART
491	bool
492	help
493	  Enable STM32Cube Universal asynchronous receiver transmitter (USART)
494	  HAL module driver
495
496config USE_STM32_HAL_UART_EX
497	bool
498	help
499	  Enable STM32Cube Extended Universal asynchronous receiver transmitter
500	  (USART) HAL module driver
501
502config USE_STM32_HAL_USART
503	bool
504	help
505	  Enable STM32Cube Universal synchronous asynchronous receiver
506	  transmitter (USART) HAL module driver
507
508config USE_STM32_HAL_USART_EX
509	bool
510	help
511	  Enable STM32Cube Extended Universal synchronous asynchronous receiver
512	  transmitter (USART) HAL module driver
513
514config USE_STM32_HAL_WWDG
515	bool
516	help
517	  Enable STM32Cube System window watchdog (WWDG) HAL module driver
518
519config USE_STM32_LL_ADC
520	bool
521	help
522	  Enable STM32Cube Analog-to-Digital Converter (ADC) LL module driver
523
524config USE_STM32_LL_BDMA
525	bool
526	help
527	  Enable STM32Cube Basic direct memory access controller (BDMA) LL
528	  module driver
529
530config USE_STM32_LL_COMP
531	bool
532	help
533	  Enable STM32Cube Ultra Low Power Comparator channels (COMP) LL module
534	  driver
535
536config USE_STM32_LL_CRC
537	bool
538	help
539	  Enable STM32Cube Cyclic redundancy check calculation unit (CRC) LL
540	  module driver
541
542config USE_STM32_LL_CRS
543	bool
544	help
545	  Enable STM32Cube Clock recovery system (CRS) LL module driver
546
547config USE_STM32_LL_DAC
548	bool
549	help
550	  Enable STM32Cube Digital-to-analog converter (DAC) LL module driver
551
552config USE_STM32_LL_DELAYBLOCK
553	bool
554	help
555	  Enable STM32Cube DelayBlock (DELAYBLOCK) LL module driver
556
557config USE_STM32_LL_DMA
558	bool
559	help
560	  Enable STM32Cube Direct Memory Access controller (DMA) LL module
561	  driver
562
563config USE_STM32_LL_DMA2D
564	bool
565	help
566	  Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) LL module
567	  driver
568
569config USE_STM32_LL_EXTI
570	bool
571	help
572	  Enable STM32Cube Extended interrupt and event controller (EXTI) LL
573	  module driver
574
575config USE_STM32_LL_FMAC
576	bool
577	help
578	  Enable STM32Cube Filter Math Accelerator (FMAC) LL module driver
579
580config USE_STM32_LL_FMC
581	bool
582	help
583	  Enable STM32Cube Flexible memory controller (FMC) LL module driver
584
585config USE_STM32_LL_FSMC
586	bool
587	help
588	  Enable STM32Cube Flexible static memory controller (FSMC) LL module
589	  driver
590
591config USE_STM32_LL_GPIO
592	bool
593	help
594	  Enable STM32Cube Extended General-purpose I/Os (GPIO) LL module driver
595
596config USE_STM32_LL_HRTIM
597	bool
598	help
599	  Enable STM32Cube High-Resolution Timer (HRTIM) LL module driver
600
601config USE_STM32_LL_I2C
602	bool
603	help
604	  Enable STM32Cube Inter-integrated circuit (I2C) interface LL module
605	  driver
606
607config USE_STM32_LL_IPCC
608	bool
609	help
610	  Enable STM32Cube Inter-Processor communication controller (IPCC) LL
611	  module driver
612
613config USE_STM32_LL_LPTIM
614	bool
615	help
616	  Enable STM32Cube Low Power Timer (LPTIM) LL module driver
617
618config USE_STM32_LL_LPUART
619	bool
620	help
621	  Enable STM32Cube Low-power universal asynchronous receiver
622	  transmitter (LPUART) LL module driver
623
624config USE_STM32_LL_MDMA
625	bool
626	help
627	  Enable STM32Cube Master Direct Memory Access controller (MDMA) LL
628	  module driver
629
630config USE_STM32_LL_OPAMP
631	bool
632	help
633	  Enable STM32Cube Operational amplifiers (OPAMP) LL module driver
634
635config USE_STM32_LL_PWR
636	bool
637	help
638	  Enable STM32Cube Power control (PWR) LL module driver
639
640config USE_STM32_LL_RCC
641	bool
642	help
643	  Enable STM32Cube Reset and Clock Control (RCC) LL module driver
644
645config USE_STM32_LL_RNG
646	bool
647	help
648	  Enable STM32Cube True random number generator (RNG) LL module driver
649
650config USE_STM32_LL_RTC
651	bool
652	help
653	  Enable STM32Cube Real-time clock (RTC) LL module driver
654
655config USE_STM32_LL_SDMMC
656	bool
657	help
658	  Enable STM32Cube SD/SDIO/MMC card host interface (SDMMC) LL module
659	  driver
660
661config USE_STM32_LL_SPI
662	bool
663	help
664	  Enable STM32Cube Serial peripheral interface (SPI) LL module driver
665
666config USE_STM32_LL_SWPMI
667	bool
668	help
669	  Enable STM32Cube Single Wire Protocol Master Interface (SWPMI) LL
670	  module driver
671
672config USE_STM32_LL_TIM
673	bool
674	help
675	  Enable STM32Cube Timer (TIM) LL module driver
676
677config USE_STM32_LL_USART
678	bool
679	help
680	  Enable STM32Cube Universal synchronous asynchronous receiver
681	  transmitter (USART) LL module driver
682
683config USE_STM32_LL_USB
684	bool
685	help
686	  Enable STM32Cube Universal serial bus full-speed device interface
687	  (USB) LL module driver
688
689config USE_STM32_LL_UTILS
690	bool
691	help
692	  Enable STM32Cube Utility functions (UTILS) LL module driver
693
694endif # HAS_STM32CUBE
695