# STM32CUBE HAL config

# Copyright (c) 2016 Linaro Limited.
# SPDX-License-Identifier: Apache-2.0

config ZEPHYR_HAL_STM32_MODULE
	bool

config ZEPHYR_HAL_STM32_MODULE_BLOBS
	bool

config HAS_STM32LIB
	bool

config HAS_STM32CUBE
	bool
	select HAS_CMSIS_CORE
	depends on SOC_FAMILY_STM32

if HAS_STM32CUBE

config USE_STM32_HAL_ADC
	bool
	help
	  Enable STM32Cube Analog-to-Digital Converter (ADC) HAL module driver

config USE_STM32_HAL_ADC_EX
	bool
	help
	  Enable STM32Cube Extended Analog-to-Digital Converter (ADC) HAL
	  module driver

config USE_STM32_HAL_BSEC
	bool
	help
	  Enable STM32Cube Boot and Security Control (BSEC) HAL module driver

config USE_STM32_HAL_CACHEAXI
	bool
	help
	  Enable STM32Cube AXI Cache (CACHEAXI) HAL module driver

config USE_STM32_HAL_CAN
	bool
	help
	  Enable STM32Cube Controller Area Network (CAN) HAL module driver

config USE_STM32_HAL_CEC
	bool
	help
	  Enable STM32Cube HDMI-CEC controller (CEC) HAL module driver

config USE_STM32_HAL_COMP
	bool
	help
	  Enable STM32Cube Ultra Low Power Comparator channels (COMP) HAL module
	  driver

config USE_STM32_HAL_CORDIC
	bool
	help
	  Enable STM32Cube CORDIC co-processor (CORDIC) functions HAL module
	  driver

config USE_STM32_HAL_CORTEX
	bool
	help
	  Enable STM32Cube CORTEX HAL module driver

config USE_STM32_HAL_CRC
	bool
	help
	  Enable STM32Cube Cyclic redundancy check calculation unit (CRC) HAL
	  module driver

config USE_STM32_HAL_CRC_EX
	bool
	help
	  Enable STM32Cube Extended Cyclic redundancy check calculation unit
	  (CRC) HAL module driver

config USE_STM32_HAL_CRYP
	bool
	help
	  Enable STM32Cube Cryptographic processor (CRYP) HAL module driver

config USE_STM32_HAL_CRYP_EX
	bool
	help
	  Enable STM32Cube Extended Cryptographic processor (CRYP) HAL module
	  driver

config USE_STM32_HAL_DAC
	bool
	help
	  Enable STM32Cube Digital-to-analog converter (DAC) HAL module driver

config USE_STM32_HAL_DAC_EX
	bool
	help
	  Enable STM32Cube Extended Digital-to-analog converter (DAC) HAL module
	  driver

config USE_STM32_HAL_DCACHE
	bool
	help
	  Enable STM32Cube data cache (DCACHE) HAL module driver

config USE_STM32_HAL_DCMI
	bool
	help
	  Enable STM32Cube Digital camera interface (DCM) HAL module driver

config USE_STM32_HAL_DCMI_EX
	bool
	help
	  Enable STM32Cube Extended Digital camera interface (DCM) HAL module
	  driver

config USE_STM32_HAL_DFSDM
	bool
	help
	  Enable STM32Cube Digital filter for sigma delta modulators (DFSDM) HAL
	  module driver

config USE_STM32_HAL_DFSDM_EX
	bool
	help
	  Enable STM32Cube Extended Digital filter for sigma delta modulators
	  (DFSDM) HAL module driver

config USE_STM32_HAL_DMA
	bool
	help
	  Enable STM32Cube Direct Memory Access controller (DMA) HAL module
	  driver

config USE_STM32_HAL_DMA2D
	bool
	help
	  Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) HAL module
	  driver

config USE_STM32_HAL_DMA_EX
	bool
	help
	  Enable STM32Cube Extended Direct Memory Access controller (DMA) HAL
	  module driver

config USE_STM32_HAL_DSI
	bool
	help
	  Enable STM32Cube Display Serial Interface Host (DSI) HAL module driver

config USE_STM32_HAL_DTS
	bool
	help
	  Enable STM32Cube Digital temperature sensor (DTS) HAL module driver

config USE_STM32_HAL_ETH
	bool
	help
	  Enable STM32Cube Ethernet (ETH) HAL module driver

config USE_STM32_HAL_ETH_EX
	bool
	help
	  Enable STM32Cube Extended Ethernet (ETH) HAL module driver

config USE_STM32_HAL_EXTI
	bool
	help
	  Enable STM32Cube Extended interrupt and event controller (EXTI) HAL
	  module driver

config USE_STM32_HAL_FDCAN
	bool
	help
	  Enable STM32Cube Controller area network with flexible data rate
	  (FDCAN) HAL module driver

config USE_STM32_HAL_FIREWALL
	bool
	help
	  Enable STM32Cube Firewall HAL module driver

config USE_STM32_HAL_FLASH
	bool
	help
	  Enable STM32Cube Embedded Flash Memory (FLASH) HAL module driver

config USE_STM32_HAL_FLASH_EX
	bool
	help
	  Enable STM32Cube Extended Embedded Flash Memory (FLASH) HAL module
	  driver

config USE_STM32_HAL_FLASH_RAMFUNC
	bool
	help
	  Enable STM32Cube Embedded Flash Memory RAM functions (FLASH_RAMFUNC)
	  HAL module driver

config USE_STM32_HAL_FMAC
	bool
	help
	  Enable STM32Cube Filter Math Accelerator (FMAC) HAL module driver

config USE_STM32_HAL_FMPI2C
	bool
	help
	  Enable STM32Cube Fast-mode Plus Inter-integrated circuit (FMPI2C)
	  HAL module driver

config USE_STM32_HAL_FMPI2C_EX
	bool
	help
	  Enable STM32Cube Extended Fast-mode Plus Inter-integrated circuit
	  (FMPI2C) HAL module driver

config USE_STM32_HAL_GFXMMU
	bool
	help
	  Enable STM32Cube Chrom-GRCTM (GFXMMU) HAL module driver

config USE_STM32_HAL_GFXTIM
	bool
	help
	  Enable STM32Cube Graphic Timer (GFXTIM) HAL module driver

config USE_STM32_HAL_GPIO
	bool
	help
	  Enable STM32Cube General-purpose I/Os (GPIO) HAL module driver

config USE_STM32_HAL_GPIO_EX
	bool
	help
	  Enable STM32Cube Extended General-purpose I/Os (GPIO) HAL module
	  driver

config USE_STM32_HAL_GPU2D
	bool
	help
	  Enable STM32Cube Neo-Chrom graphic processor (GPU2D) HAL module
	  driver

config USE_STM32_HAL_GTZC
	bool
	help
	  Enable STM32Cube Global TrustZone controller (GTZC) HAL module
	  driver

config USE_STM32_HAL_HASH
	bool
	help
	  Enable STM32Cube Hash processor (HASH) HAL module driver

config USE_STM32_HAL_HASH_EX
	bool
	help
	  Enable STM32Cube Extended Hash processor (HASH) HAL module driver

config USE_STM32_HAL_HCD
	bool
	help
	  Enable STM32Cube Host Controller device (HCD) HAL module driver

config USE_STM32_HAL_HRTIM
	bool
	help
	  Enable STM32Cube High-Resolution Timer (HRTIM) HAL module driver

config USE_STM32_HAL_HSEM
	bool
	help
	  Enable STM32Cube Hardware Semaphore (HSEM) HAL module driver

config USE_STM32_HAL_I2C
	bool
	help
	  Enable STM32Cube Inter-integrated circuit (I2C) interface HAL module
	  driver

config USE_STM32_HAL_I2C_EX
	bool
	help
	  Enable STM32Cube Extended Inter-integrated circuit (I2C) interface HAL
	  module driver

config USE_STM32_HAL_I2S
	bool
	help
	  Enable STM32Cube Inter-IC sound (I2S) HAL module driver

config USE_STM32_HAL_I2S_EX
	bool
	help
	  Enable STM32Cube Extended Inter-IC sound (I2S) HAL module driver

config USE_STM32_HAL_I3C
	bool
	help
	  Enable STM32Cube Improved inter-integrated circuit (I3C) HAL module
	  driver

config USE_STM32_HAL_ICACHE
	bool
	help
	  Enable STM32Cube Instruction cache (ICACHE) HAL module driver

config USE_STM32_HAL_IPCC
	bool
	help
	  Enable STM32Cube Inter-Processor communication controller (IPCC) HAL
	  module driver

config USE_STM32_HAL_IRDA
	bool
	help
	  Enable STM32Cube Infrared Data Association (IRDA) HAL module driver

config USE_STM32_HAL_IWDG
	bool
	help
	  Enable STM32Cube Independent watchdog (IWDG) HAL module driver

config USE_STM32_HAL_JPEG
	bool
	help
	  Enable STM32Cube Jpeg codec (JPEG) HAL module driver

config USE_STM32_HAL_LCD
	bool
	help
	  Enable STM32Cube LCD controller (LCD) HAL module driver

config USE_STM32_HAL_LPTIM
	bool
	help
	  Enable STM32Cube Low Power Timer (LPTIM) HAL module driver

config USE_STM32_HAL_LTDC
	bool
	help
	  Enable STM32Cube LCD-TFT controller (LTDC) HAL module driver

config USE_STM32_HAL_LTDC_EX
	bool
	help
	  Enable STM32Cube Extended LCD-TFT controller (LTDC) HAL module driver

config USE_STM32_HAL_MCE
	bool
	help
	  Enable STM32Cube Memory Cipher Engine (MCE) HAL module driver

config USE_STM32_HAL_MDF
	bool
	help
	  Enable STM32Cube Multi-function digital filter (MDF) HAL module driver

config USE_STM32_HAL_MDIOS
	bool
	help
	  Enable STM32Cube Management data input/output (MDIOS) HAL module
	  driver

config USE_STM32_HAL_MDMA
	bool
	help
	  Enable STM32Cube Master Direct Memory Access controller (MDMA) HAL
	  module driver

config USE_STM32_HAL_MMC
	bool
	help
	  Enable STM32Cube MultiMediaCard interface (SDMMC) HAL module driver

config USE_STM32_HAL_MMC_EX
	bool
	help
	  Enable STM32Cube Extended MultiMediaCard interface (SDMMC) HAL module
	  driver

config USE_STM32_HAL_MSP
	bool
	help
	  Enable STM32Cube MCU Support Package (MSP) HAL module driver

config USE_STM32_HAL_NAND
	bool
	help
	  Enable STM32Cube NAND Controller (NAND) HAL module driver

config USE_STM32_HAL_NOR
	bool
	help
	  Enable STM32Cube NOR Controller (NOR) HAL module driver

config USE_STM32_HAL_OPAMP
	bool
	help
	  Enable STM32Cube Operational amplifiers (OPAMP) HAL module driver

config USE_STM32_HAL_OPAMP_EX
	bool
	help
	  Enable STM32Cube Extended Operational amplifiers (OPAMP) HAL module
	  driver

config USE_STM32_HAL_OSPI
	bool
	help
	  Enable STM32Cube Octo-SPI interface (OSPI) HAL module driver

config USE_STM32_HAL_OTFDEC
	bool
	help
	  Enable STM32Cube On-the-fly decryption engine (OTFDEC) HAL module
	  driver

config USE_STM32_HAL_PCCARD
	bool
	help
	  Enable STM32Cube PCCard memories (PCCARD) HAL module driver

config USE_STM32_HAL_PCD
	bool
	help
	  Enable STM32Cube USB Peripheral Controller (PCD) HAL module driver

config USE_STM32_HAL_PCD_EX
	bool
	help
	  Enable STM32Cube Extended USB Peripheral Controller (PCD) HAL module
	  driver

config USE_STM32_HAL_PKA
	bool
	help
	  Enable STM32Cube Public key accelerator (PKA) HAL module driver

config USE_STM32_HAL_PSSI
	bool
	help
	  Enable STM32Cube Parallel Synchronous Slave Interface (PSSI)
	  HAL module driver

config USE_STM32_HAL_PWR
	bool
	help
	  Enable STM32Cube Power control (PWR) HAL module driver

config USE_STM32_HAL_PWR_EX
	bool
	help
	  Enable STM32Cube Extended Power control (PWR) HAL module driver

config USE_STM32_HAL_QSPI
	bool
	help
	  Enable STM32Cube Quad-SPI interface (QSPI) HAL module driver

config USE_STM32_HAL_RAMCFG
	bool
	help
	  Enable STM32Cube RAMs configuration controller (RAMCFG) HAL module
	  driver

config USE_STM32_HAL_RADIO
	bool
	help
	  Enable STM32Cube Radio HAL module driver

config USE_STM32_HAL_RADIO_TIMER
	bool
	help
	  Enable STM32Cube Radio Timer HAL module driver

config USE_STM32_HAL_RAMECC
	bool
	help
	  Enable STM32Cube RAM ECC monitoring (RAMECC) HAL module driver

config USE_STM32_HAL_RIF
	bool
	help
	  Enable STM32Cube Resource Isolation Framework (RIF) HAL module driver

config USE_STM32_HAL_RNG
	bool
	help
	  Enable STM32Cube True random number generator (RNG) HAL module driver

config USE_STM32_HAL_RNG_EX
	bool
	help
	  Enable STM32Cube Extended True random number generator (RNG) HAL module driver

config USE_STM32_HAL_RTC
	bool
	help
	  Enable STM32Cube Real-time clock (RTC) HAL module driver

config USE_STM32_HAL_RTC_EX
	bool
	help
	  Enable STM32Cube Extended Real-time clock (RTC) HAL module driver

config USE_STM32_HAL_SAI
	bool
	help
	  Enable STM32Cube Serial audio interface (SAI) HAL module driver

config USE_STM32_HAL_SAI_EX
	bool
	help
	  Enable STM32Cube Extended Serial audio interface (SAI) HAL module
	  driver

config USE_STM32_HAL_SD
	bool
	help
	  Enable STM32Cube Secure digital input/output MultiMediaCard interface
	  (SDMMC) HAL module driver

config USE_STM32_HAL_SD_EX
	bool
	help
	  Enable STM32Cube Extended Secure digital input/output MultiMediaCard
	  interface (SDMMC) HAL module driver

config USE_STM32_HAL_SDADC
	bool
	help
	  Enable STM32Cube SDADC HAL module driver

config USE_STM32_HAL_SDIO
	bool
	help
	  Enable STM32Cube Secure digital input/output interface (SDIO)
	  HAL module driver

config USE_STM32_HAL_SDRAM
	bool
	help
	  Enable STM32Cube SDRAM controller (SDRAM) HAL module driver

config USE_STM32_HAL_SMARTCARD
	bool
	help
	  Enable STM32Cube Smartcard controller (SMARTCARD) HAL module driver

config USE_STM32_HAL_SMARTCARD_EX
	bool
	help
	  Enable STM32Cube Extended Smartcard controller (SMARTCARD) HAL module
	  driver

config USE_STM32_HAL_SMBUS
	bool
	help
	  Enable STM32Cube System Management Bus (SMBus) HAL module driver

config USE_STM32_HAL_SMBUS_EX
	bool
	help
	  Enable STM32Cube Extended System Management Bus (SMBus) HAL module driver

config USE_STM32_HAL_SPDIFRX
	bool
	help
	  Enable STM32Cube SPDIF receiver interface (SPDIFRX) HAL module driver

config USE_STM32_HAL_SPI
	bool
	help
	  Enable STM32Cube Serial peripheral interface (SPI) HAL module driver

config USE_STM32_HAL_SPI_EX
	bool
	help
	  Enable STM32Cube Extended Serial peripheral interface (SPI) HAL module
	  driver

config USE_STM32_HAL_SRAM
	bool
	help
	  Enable STM32Cube SRAM controller (SRAM) HAL module driver

config USE_STM32_HAL_SWPMI
	bool
	help
	  Enable STM32Cube Single Wire Protocol Master Interface (SWPMI) HAL
	  module

config USE_STM32_HAL_TIM
	bool
	help
	  Enable STM32Cube Timer (TIM) HAL module driver

config USE_STM32_HAL_TIM_EX
	bool
	help
	  Enable STM32Cube Extended Timer (TIM) HAL module driver

config USE_STM32_HAL_TSC
	bool
	help
	  Enable STM32Cube Touch sensing controller (TSC) HAL module driver

config USE_STM32_HAL_UART
	bool
	help
	  Enable STM32Cube Universal asynchronous receiver transmitter (USART)
	  HAL module driver

config USE_STM32_HAL_UART_EX
	bool
	help
	  Enable STM32Cube Extended Universal asynchronous receiver transmitter
	  (USART) HAL module driver

config USE_STM32_HAL_USART
	bool
	help
	  Enable STM32Cube Universal synchronous asynchronous receiver
	  transmitter (USART) HAL module driver

config USE_STM32_HAL_USART_EX
	bool
	help
	  Enable STM32Cube Extended Universal synchronous asynchronous receiver
	  transmitter (USART) HAL module driver

config USE_STM32_HAL_WWDG
	bool
	help
	  Enable STM32Cube System window watchdog (WWDG) HAL module driver

config USE_STM32_HAL_XSPI
	bool
	help
	  Enable STM32Cube OctoSPI (XSPI) HAL module driver

config USE_STM32_LL_ADC
	bool
	help
	  Enable STM32Cube Analog-to-Digital Converter (ADC) LL module driver

config USE_STM32_LL_BDMA
	bool
	help
	  Enable STM32Cube Basic direct memory access controller (BDMA) LL
	  module driver

config USE_STM32_LL_COMP
	bool
	help
	  Enable STM32Cube Ultra Low Power Comparator channels (COMP) LL module
	  driver

config USE_STM32_LL_CORDIC
	bool
	help
	  Enable STM32Cube CORDIC co-processor (CORDIC) functions LL module
	  driver

config USE_STM32_LL_CRC
	bool
	help
	  Enable STM32Cube Cyclic redundancy check calculation unit (CRC) LL
	  module driver

config USE_STM32_LL_CRS
	bool
	help
	  Enable STM32Cube Clock recovery system (CRS) LL module driver

config USE_STM32_LL_DAC
	bool
	help
	  Enable STM32Cube Digital-to-analog converter (DAC) LL module driver

config USE_STM32_LL_DELAYBLOCK
	bool
	help
	  Enable STM32Cube DelayBlock (DELAYBLOCK) LL module driver (stm32H7 or stm32MP1)

config USE_STM32_LL_DLYB
	bool
	help
	  Enable STM32Cube DelayBlock (DELAYBLOCK) LL module driver (stm32U5 or STM32N6)

config USE_STM32_LL_DMA
	bool
	help
	  Enable STM32Cube Direct Memory Access controller (DMA) LL module
	  driver

config USE_STM32_LL_DMA2D
	bool
	help
	  Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) LL module
	  driver

config USE_STM32_LL_EXTI
	bool
	help
	  Enable STM32Cube Extended interrupt and event controller (EXTI) LL
	  module driver

config USE_STM32_LL_FMAC
	bool
	help
	  Enable STM32Cube Filter Math Accelerator (FMAC) LL module driver

config USE_STM32_LL_FMC
	bool
	help
	  Enable STM32Cube Flexible memory controller (FMC) LL module driver

config USE_STM32_LL_FSMC
	bool
	help
	  Enable STM32Cube Flexible static memory controller (FSMC) LL module
	  driver

config USE_STM32_LL_GPIO
	bool
	help
	  Enable STM32Cube Extended General-purpose I/Os (GPIO) LL module driver

config USE_STM32_LL_HRTIM
	bool
	help
	  Enable STM32Cube High-Resolution Timer (HRTIM) LL module driver

config USE_STM32_LL_I2C
	bool
	help
	  Enable STM32Cube Inter-integrated circuit (I2C) interface LL module
	  driver

config USE_STM32_LL_I3C
	bool
	help
	  Enable STM32Cube Improved inter-integrated circuit (I3C) LL module
	  driver

config USE_STM32_LL_ICACHE
	bool
	help
	  Enable STM32Cube Instruction cache (ICACHE) LL module driver

config USE_STM32_LL_IPCC
	bool
	help
	  Enable STM32Cube Inter-Processor communication controller (IPCC) LL
	  module driver

config USE_STM32_LL_LPGPIO
	bool
	help
	  Enable STM32Cube Low-power general-purpose I/Os (LPGPIO) LL
	  module driver

config USE_STM32_LL_LPTIM
	bool
	help
	  Enable STM32Cube Low Power Timer (LPTIM) LL module driver

config USE_STM32_LL_LPUART
	bool
	help
	  Enable STM32Cube Low-power universal asynchronous receiver
	  transmitter (LPUART) LL module driver

config USE_STM32_LL_MDMA
	bool
	help
	  Enable STM32Cube Master Direct Memory Access controller (MDMA) LL
	  module driver

config USE_STM32_LL_OPAMP
	bool
	help
	  Enable STM32Cube Operational amplifiers (OPAMP) LL module driver

config USE_STM32_LL_PKA
	bool
	help
	  Enable STM32Cube Public key accelerator (PKA) LL module driver

config USE_STM32_LL_PWR
	bool
	help
	  Enable STM32Cube Power control (PWR) LL module driver

config USE_STM32_LL_RCC
	bool
	help
	  Enable STM32Cube Reset and Clock Control (RCC) LL module driver

config USE_STM32_LL_RNG
	bool
	help
	  Enable STM32Cube True random number generator (RNG) LL module driver

config USE_STM32_LL_RTC
	bool
	help
	  Enable STM32Cube Real-time clock (RTC) LL module driver

config USE_STM32_LL_SDMMC
	bool
	help
	  Enable STM32Cube SD/SDIO/MMC card host interface (SDMMC) LL module
	  driver

config USE_STM32_LL_SPI
	bool
	help
	  Enable STM32Cube Serial peripheral interface (SPI) LL module driver

config USE_STM32_LL_SWPMI
	bool
	help
	  Enable STM32Cube Single Wire Protocol Master Interface (SWPMI) LL
	  module driver

config USE_STM32_LL_TIM
	bool
	help
	  Enable STM32Cube Timer (TIM) LL module driver

config USE_STM32_LL_UCPD
	bool
	help
	  Enable STM32Cube USB Power Delivery device interface
	  (UCPD) LL module driver

config USE_STM32_LL_USART
	bool
	help
	  Enable STM32Cube Universal synchronous asynchronous receiver
	  transmitter (USART) LL module driver

config USE_STM32_LL_USB
	bool
	help
	  Enable STM32Cube Universal serial bus full-speed device interface
	  (USB) LL module driver

config USE_STM32_LL_UTILS
	bool
	help
	  Enable STM32Cube Utility functions (UTILS) LL module driver

config USE_STM32_LL_VENC
	bool
	help
	  Enable STM32Cube Video Encoder (VENC) LL module driver

config USE_STM32_UTIL_I3C
	bool
	help
	  Enable STM32Cube I3C Timing Utility functions (UTILS) module driver

endif # HAS_STM32CUBE
