# SPDX-License-Identifier: GPL-2.0-only
# Recent Exynos platforms should just select COMMON_CLK_SAMSUNG:
config COMMON_CLK_SAMSUNG
	bool "Samsung Exynos clock controller support" if COMPILE_TEST
	depends on OF
	select S3C64XX_COMMON_CLK if ARM && ARCH_S3C64XX
	select S5PV210_COMMON_CLK if ARM && ARCH_S5PV210
	select EXYNOS_3250_COMMON_CLK if ARM && SOC_EXYNOS3250
	select EXYNOS_4_COMMON_CLK if ARM && ARCH_EXYNOS4
	select EXYNOS_5250_COMMON_CLK if ARM && SOC_EXYNOS5250
	select EXYNOS_5260_COMMON_CLK if ARM && SOC_EXYNOS5260
	select EXYNOS_5410_COMMON_CLK if ARM && SOC_EXYNOS5410
	select EXYNOS_5420_COMMON_CLK if ARM && SOC_EXYNOS5420
	select EXYNOS_ARM64_COMMON_CLK if ARM64 && ARCH_EXYNOS
	select TESLA_FSD_COMMON_CLK if ARM64 && ARCH_TESLA_FSD

config S3C64XX_COMMON_CLK
	bool "Samsung S3C64xx clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	help
	  Support for the clock controller present on the Samsung S3C64xx SoCs.
	  Choose Y here only if you build for this SoC.

config S5PV210_COMMON_CLK
	bool "Samsung S5Pv210 clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	help
	  Support for the clock controller present on the Samsung S5Pv210 SoCs.
	  Choose Y here only if you build for this SoC.

config EXYNOS_3250_COMMON_CLK
	bool "Samsung Exynos3250 clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	help
	  Support for the clock controller present on the Samsung
	  Exynos3250 SoCs. Choose Y here only if you build for this SoC.

config EXYNOS_4_COMMON_CLK
	bool "Samsung Exynos4 clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	help
	  Support for the clock controller present on the Samsung
	  Exynos4212 and Exynos4412 SoCs. Choose Y here only if you build for
	  this SoC.

config EXYNOS_5250_COMMON_CLK
	bool "Samsung Exynos5250 clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	help
	  Support for the clock controller present on the Samsung
	  Exynos5250 SoCs. Choose Y here only if you build for this SoC.

config EXYNOS_5260_COMMON_CLK
	bool "Samsung Exynos5260 clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	help
	  Support for the clock controller present on the Samsung
	  Exynos5260 SoCs. Choose Y here only if you build for this SoC.

config EXYNOS_5410_COMMON_CLK
	bool "Samsung Exynos5410 clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	help
	  Support for the clock controller present on the Samsung
	  Exynos5410 SoCs. Choose Y here only if you build for this SoC.

config EXYNOS_5420_COMMON_CLK
	bool "Samsung Exynos5420 clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	help
	  Support for the clock controller present on the Samsung
	  Exynos5420/Exynos5422/Exynos5800 SoCs. Choose Y here only if you
	  build for this SoC.

config EXYNOS_ARM64_COMMON_CLK
	bool "Samsung Exynos ARMv8-family clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG

config EXYNOS_AUDSS_CLK_CON
	tristate "Samsung Exynos AUDSS clock controller support"
	depends on COMMON_CLK_SAMSUNG
	default y if ARCH_EXYNOS
	help
	  Support for the Audio Subsystem CLKCON clock controller present
	  on some Samsung Exynos SoC variants. Choose M or Y here if you want
	  to use audio devices such as I2S, PCM, etc.

config EXYNOS_CLKOUT
	tristate "Samsung Exynos clock output driver"
	depends on COMMON_CLK_SAMSUNG
	default y if ARCH_EXYNOS
	help
	  Support for the clock output (XCLKOUT) present on some of Samsung
	  Exynos SoC variants. Usually the XCLKOUT is used to monitor the
	  status of the certains clocks from SoC, but it could also be tied to
	  other devices as an input clock.

config TESLA_FSD_COMMON_CLK
	bool "Tesla FSD clock controller support" if COMPILE_TEST
	depends on COMMON_CLK_SAMSUNG
	depends on EXYNOS_ARM64_COMMON_CLK
	help
	  Support for the clock controller present on the Tesla FSD SoC.
	  Choose Y here only if you build for this SoC.