mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-24 12:03:39 +00:00
6038884483
This change introduces a clock driver for SCMI agent devices. When SCMI agent and SCMI clock drivers are enabled, SCMI agent binds a clock device for each SCMI clock protocol devices enabled in the FDT. SCMI clock driver is embedded upon CONFIG_CLK_SCMI=y. If enabled, CONFIG_SCMI_AGENT is also enabled. SCMI Clock protocol is defined in the SCMI specification [1]. Links: [1] https://developer.arm.com/architectures/system-architectures/software-standards/scmi Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Cc: Lukasz Majewski <lukma@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Peng Fan <peng.fan@nxp.com> Cc: Sudeep Holla <sudeep.holla@arm.com> Reviewed-by: Simon Glass <sjg@chromium.org>
206 lines
6.3 KiB
Text
206 lines
6.3 KiB
Text
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_OCTEON
|
|
bool "Clock controller driver for Marvell MIPS Octeon"
|
|
depends on CLK && ARCH_OCTEON
|
|
default y
|
|
help
|
|
Enable this to support the clocks on Octeon MIPS platforms.
|
|
|
|
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 boards"
|
|
depends on CLK && TARGET_HSDK
|
|
help
|
|
Enable this to support the cgu clocks on Synopsys ARC HSDK and
|
|
Synopsys ARC HSDK-4xD boards
|
|
|
|
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.
|
|
|
|
config CLK_SCMI
|
|
bool "Enable SCMI clock driver"
|
|
depends on SCMI_FIRMWARE
|
|
help
|
|
Enable this option if you want to support clock devices exposed
|
|
by a SCMI agent based on SCMI clock protocol communication
|
|
with a SCMI server.
|
|
|
|
source "drivers/clk/analogbits/Kconfig"
|
|
source "drivers/clk/at91/Kconfig"
|
|
source "drivers/clk/exynos/Kconfig"
|
|
source "drivers/clk/imx/Kconfig"
|
|
source "drivers/clk/kendryte/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
|