# SPDX-License-Identifier: GPL-2.0-only
if ARCH_STM32 || COMPILE_TEST

config PINCTRL_STM32
	tristate
	depends on OF
	select PINMUX
	select GENERIC_PINCONF
	select GPIOLIB
	select IRQ_DOMAIN_HIERARCHY
	select MFD_SYSCON

config PINCTRL_STM32F429
	bool "STMicroelectronics STM32F429 pin control" if COMPILE_TEST && !MACH_STM32F429
	depends on OF && HAS_IOMEM
	default MACH_STM32F429
	select PINCTRL_STM32

config PINCTRL_STM32F469
	bool "STMicroelectronics STM32F469 pin control" if COMPILE_TEST && !MACH_STM32F469
	depends on OF && HAS_IOMEM
	default MACH_STM32F469
	select PINCTRL_STM32

config PINCTRL_STM32F746
	bool "STMicroelectronics STM32F746 pin control" if COMPILE_TEST && !MACH_STM32F746
	depends on OF && HAS_IOMEM
	default MACH_STM32F746
	select PINCTRL_STM32

config PINCTRL_STM32F769
	bool "STMicroelectronics STM32F769 pin control" if COMPILE_TEST && !MACH_STM32F769
	depends on OF && HAS_IOMEM
	default MACH_STM32F769
	select PINCTRL_STM32

config PINCTRL_STM32H743
	bool "STMicroelectronics STM32H743 pin control" if COMPILE_TEST && !MACH_STM32H743
	depends on OF && HAS_IOMEM
	default MACH_STM32H743
	select PINCTRL_STM32

config PINCTRL_STM32MP135
	bool "STMicroelectronics STM32MP135 pin control" if COMPILE_TEST && !MACH_STM32MP13
	depends on OF && HAS_IOMEM
	default MACH_STM32MP13
	select PINCTRL_STM32

config PINCTRL_STM32MP157
	bool "STMicroelectronics STM32MP157 pin control" if COMPILE_TEST && !MACH_STM32MP157
	depends on OF && HAS_IOMEM
	default MACH_STM32MP157
	select PINCTRL_STM32

config PINCTRL_STM32MP257
	tristate "STMicroelectronics STM32MP257 pin control"
	depends on OF && HAS_IOMEM
	default MACH_STM32MP25 || (ARCH_STM32 && ARM64)
	select PINCTRL_STM32

config PINCTRL_STM32_HDP
	tristate "STMicroelectronics STM32 Hardware Debug Port (HDP) pin control"
	depends on OF && HAS_IOMEM
	default ARCH_STM32 && !ARM_SINGLE_ARMV7M
	select PINMUX
	select GENERIC_PINCONF
	select GPIOLIB
	help
	  The Hardware Debug Port allows the observation of internal signals.
	  It uses configurable multiplexer to route signals in a dedicated observation register.
	  This driver also permits the observation of signals on external SoC pins.
	  It permits the observation of up to 16 signals per HDP line.

endif
