Kconfig 5.75 KB
menu "Clock"

config CLK
	bool "Enable clock driver support"
	depends on DM
	help
	  This allows drivers to be provided for clock generators, including
	  oscillators and PLLs. Devices can use a common clock API to request
	  a particular clock rate and check on available clocks. Clocks can
	  feed into other clocks in a tree structure, with multiplexers to
	  choose the source for each clock.

config SPL_CLK
	bool "Enable clock support in SPL"
	depends on CLK && SPL && SPL_DM
	help
	  The clock subsystem adds a small amount of overhead to the image.
	  If this is acceptable and you have a need to use clock drivers in
	  SPL, enable this option. It might provide a cleaner interface to
	  setting up clocks within SPL, and allows the same drivers to be
	  used as U-Boot proper.

config TPL_CLK
	bool "Enable clock support in TPL"
	depends on CLK && TPL_DM
	help
	  The clock subsystem adds a small amount of overhead to the image.
	  If this is acceptable and you have a need to use clock drivers in
	  SPL, enable this option. It might provide a cleaner interface to
	  setting up clocks within TPL, and allows the same drivers to be
	  used as U-Boot proper.

config CLK_BCM6345
	bool "Clock controller driver for BCM6345"
	depends on CLK && ARCH_BMIPS
	default y
	help
	  This clock driver adds support for enabling and disabling peripheral
	  clocks on BCM6345 SoCs. HW has no rate changing capabilities.

config CLK_BOSTON
	def_bool y if TARGET_BOSTON
	depends on CLK
	select REGMAP
	select SYSCON
	help
	  Enable this to support the clocks

config SPL_CLK_CCF
	bool "SPL Common Clock Framework [CCF] support "
	depends on SPL
	help
	  Enable this option if you want to (re-)use the Linux kernel's Common
	  Clock Framework [CCF] code in U-Boot's SPL.

config SPL_CLK_COMPOSITE_CCF
	bool "SPL Common Clock Framework [CCF] composite clk support "
	depends on SPL_CLK_CCF
	help
	  Enable this option if you want to (re-)use the Linux kernel's Common
	  Clock Framework [CCF] composite code in U-Boot's SPL.

config CLK_CCF
	bool "Common Clock Framework [CCF] support "
	help
	  Enable this option if you want to (re-)use the Linux kernel's Common
	  Clock Framework [CCF] code in U-Boot's clock driver.

config CLK_COMPOSITE_CCF
	bool "Common Clock Framework [CCF] composite clk support "
	depends on CLK_CCF
	help
	  Enable this option if you want to (re-)use the Linux kernel's Common
	  Clock Framework [CCF] composite code in U-Boot's clock driver.

config CLK_INTEL
	bool "Enable clock driver for Intel x86"
	depends on CLK && X86
	help
	  This provides very basic support for clocks on Intel SoCs. The driver
	  is barely used at present but could be expanded as needs arise.
	  Much clock configuration in U-Boot is either set up by the FSP, or
	  set up by U-Boot itself but only statically. Thus the driver does not
	  support changing clock rates, only querying them.

config CLK_STM32F
	bool "Enable clock driver support for STM32F family"
	depends on CLK && (STM32F7 || STM32F4)
	default y
	help
	  This clock driver adds support for RCC clock management
	  for STM32F4 and STM32F7 SoCs.

config CLK_TI_SCI
	bool "TI System Control Interface (TI SCI) clock driver"
	depends on CLK && TI_SCI_PROTOCOL && OF_CONTROL
	help
	  This enables the clock driver support over TI System Control Interface
	  available on some new TI's SoCs. If you wish to use clock resources
	  managed by the TI System Controller, say Y here. Otherwise, say N.

config CLK_HSDK
	bool "Enable cgu clock driver for HSDK"
	depends on CLK
	help
	  Enable this to support the cgu clocks on Synopsys ARC HSDK

config CLK_VERSAL
	bool "Enable clock driver support for Versal"
	depends on ARCH_VERSAL
	select ZYNQMP_FIRMWARE
	help
	  This clock driver adds support for clock realted settings for
	  Versal platform.

config CLK_VEXPRESS_OSC
	bool "Enable driver for Arm Versatile Express OSC clock generators"
	depends on CLK && VEXPRESS_CONFIG
	help
	  This clock driver adds support for clock generators present on
	  Arm Versatile Express platforms.

config CLK_ZYNQ
	bool "Enable clock driver support for Zynq"
	depends on CLK && ARCH_ZYNQ
	default y
	help
	  This clock driver adds support for clock realted settings for
	  Zynq platform.

config CLK_ZYNQMP
	bool "Enable clock driver support for ZynqMP"
	depends on ARCH_ZYNQMP
	select ZYNQMP_FIRMWARE
	help
	  This clock driver adds support for clock realted settings for
	  ZynqMP platform.

config CLK_STM32MP1
	bool "Enable RCC clock driver for STM32MP1"
	depends on ARCH_STM32MP && CLK
	default y
	help
	  Enable the STM32 clock (RCC) driver. Enable support for
	  manipulating STM32MP1's on-SoC clocks.

config CLK_CDCE9XX
	bool "Enable CDCD9XX clock driver"
	depends on CLK
	help
	   Enable the clock synthesizer driver for CDCE913/925/937/949
	   series of chips.

source "drivers/clk/analogbits/Kconfig"
source "drivers/clk/at91/Kconfig"
source "drivers/clk/exynos/Kconfig"
source "drivers/clk/imx/Kconfig"
source "drivers/clk/meson/Kconfig"
source "drivers/clk/mvebu/Kconfig"
source "drivers/clk/owl/Kconfig"
source "drivers/clk/renesas/Kconfig"
source "drivers/clk/sunxi/Kconfig"
source "drivers/clk/sifive/Kconfig"
source "drivers/clk/tegra/Kconfig"
source "drivers/clk/uniphier/Kconfig"

config ICS8N3QV01
	bool "Enable ICS8N3QV01 VCXO driver"
	depends on CLK
	help
	  Support for the ICS8N3QV01 Quad-Frequency VCXO (Voltage-Controlled
	  Crystal Oscillator). The output frequency can be programmed via an
	  I2C interface.

config CLK_MPC83XX
	bool "Enable MPC83xx clock driver"
	depends on CLK
	help
	  Support for the clock driver of the MPC83xx series of SoCs.

config SANDBOX_CLK_CCF
	bool "Sandbox Common Clock Framework [CCF] support "
	depends on SANDBOX
	select CLK_CCF
	help
	  Enable this option if you want to test the Linux kernel's Common
	  Clock Framework [CCF] code in U-Boot's Sandbox clock driver.

endmenu