# SPDX-License-Identifier: GPL-2.0-only
menu "Ingenic SoCs drivers"
	depends on MIPS || COMPILE_TEST

config INGENIC_CGU_COMMON
	bool

config INGENIC_CGU_JZ4740
	bool "Ingenic JZ4740 CGU driver"
	default MACH_JZ4740
	select INGENIC_CGU_COMMON
	help
	  Support the clocks provided by the CGU hardware on Ingenic JZ4740
	  and compatible SoCs.

	  If building for a JZ4740 SoC, you want to say Y here.

config INGENIC_CGU_JZ4725B
	bool "Ingenic JZ4725B CGU driver"
	default MACH_JZ4725B
	select INGENIC_CGU_COMMON
	help
	  Support the clocks provided by the CGU hardware on Ingenic JZ4725B
	  and compatible SoCs.

	  If building for a JZ4725B SoC, you want to say Y here.

config INGENIC_CGU_JZ4760
	bool "Ingenic JZ4760 CGU driver"
	default MACH_JZ4760
	select INGENIC_CGU_COMMON
	help
	  Support the clocks provided by the CGU hardware on Ingenic JZ4760
	  and compatible SoCs.

	  If building for a JZ4760 SoC, you want to say Y here.

config INGENIC_CGU_JZ4770
	bool "Ingenic JZ4770 CGU driver"
	default MACH_JZ4770
	select INGENIC_CGU_COMMON
	help
	  Support the clocks provided by the CGU hardware on Ingenic JZ4770
	  and compatible SoCs.

	  If building for a JZ4770 SoC, you want to say Y here.

config INGENIC_CGU_JZ4780
	bool "Ingenic JZ4780 CGU driver"
	default MACH_JZ4780
	select INGENIC_CGU_COMMON
	help
	  Support the clocks provided by the CGU hardware on Ingenic JZ4780
	  and compatible SoCs.

	  If building for a JZ4780 SoC, you want to say Y here.

config INGENIC_CGU_X1000
	bool "Ingenic X1000 CGU driver"
	default MACH_X1000
	select INGENIC_CGU_COMMON
	help
	  Support the clocks provided by the CGU hardware on Ingenic X1000
	  and compatible SoCs.

	  If building for a X1000 SoC, you want to say Y here.

config INGENIC_CGU_X1830
	bool "Ingenic X1830 CGU driver"
	default MACH_X1830
	select INGENIC_CGU_COMMON
	help
	  Support the clocks provided by the CGU hardware on Ingenic X1830
	  and compatible SoCs.

	  If building for a X1830 SoC, you want to say Y here.

config INGENIC_TCU_CLK
	bool "Ingenic JZ47xx TCU clocks driver"
	default MACH_INGENIC
	select MFD_SYSCON
	help
	  Support the clocks of the Timer/Counter Unit (TCU) of the Ingenic
	  JZ47xx SoCs.

endmenu
