e81507acdc
are a couple patches to the core clk framework, but they're all basically cleanups or debugging aids. The driver updates and new additions are dominated in the diffstat by Qualcomm and MediaTek drivers. Qualcomm gained a handful of new drivers for various SoCs, and MediaTek gained a bunch of drivers for MT8188. The MediaTek drivers are being modernized as well, so there are updates all over that vendor's clk drivers. There's also a couple other new clk drivers in here, for example the Starfive JH7110 SoC support is added. Outside of the two major SoC vendors though, we have the usual collection of non-critical fixes and cleanups to various clk drivers. It's good to see that we're getting more cleanups and modernization patches. Maybe one day we'll be able to properly split clk providers from clk consumers. Core: - Print an informational message before disabling unused clks New Drivers: - BCM63268 timer clock and reset controller - Frequency Hopping (FHCTL) on MediaTek MT6795, MT8173, MT8192 and MT8195 SoCs - Mediatek MT8188 SoC clk drivers - Clock driver for Sunplus SP7021 SoC - Clk driver support for Loongson-2 SoCs - Clock driver for Skyworks Si521xx I2C PCIe clock generators - Initial Starfive JH7110 clk/reset support - Global clock controller drivers for Qualcomm SM7150, IPQ9574, MSM8917 and IPQ5332 SoCs - GPU clock controller drivers for SM6115, SM6125, SM6375 and SA8775P SoCs Updates: - Shrink size of clk_fractional_divider a little - Convert various clk drivers to devm_of_clk_add_hw_provider() - Convert platform clk drivers to remove_new() - Converted most Mediatek clock drivers to struct platform_driver - MediaTek clock drivers can be built as modules - Reimplement Loongson-1 clk driver with DT support - Migrate socfpga clk driver to of_clk_add_hw_provider() - Support for i3c clks on Aspeed ast2600 SoCs - Add clock generic devm_clk_hw_register_gate_parent_data - Add audiomix block control for i.MX8MP - Add support for determine_rate to i.MX composite-8m - Let the LCDIF Pixel clock of i.MX8MM and i.MX8MN set parent rate - Provide clock name in error message for clk-gpr-mux on get parent failure - Drop duplicate imx_clk_mux_flags macro - Register the i.MX8MP Media Disp2 Pix clock as bus clock - Add Media LDB root clock to i.MX8MP - Make i.MX8MP nand_usdhc_bus clock as non-critical - Fix the rate table for i.MX fracn-gppll - Disable HW control for the fracn-gppll in order to be controlled by register write - Add support for interger PLL in fracn-gppll - Add mcore_booted module parameter to i.MX93 provider - Add NIC, A55 and ARM PLL clocks to i.MX93 - Fix i.MX8ULP XBAR_DIVBUS and AD_SLOW clock parents - Use "divider closest" clock type for PLL4_PFD dividers on i.MX8ULP to get more accurate clock rates - Mark the MU0_Bi and TPM5 clocks on i.MX8ULP as critical - Update some of the i.MX critical clocks flags to allow glitchless on-the-fly rate change. - Add I2C5 clock on Renesas R-Car V3H - Exynos850: Add CMU_G3D clock controller for the Mali GPU - Extract Exynos5433 (ARM64) clock controller power management code to common driver parts - Exynos850: make PMU_ALIVE_PCLK clock critical - Add Audio, thermal, camera (CSI-2), Image Signal Processor/Channel Selector (ISPCS), and video capture (VIN) clocks on Renesas R-Car V4H - Add video capture (VIN) clocks on Renesas R-Car V3H - Add Cortex-A53 System CPU (Z2) clocks on Renesas R-Car V3M and V3H - Support for Stromer Plus PLL on Qualcomm IPQ5332 - Add a missing reset to Qualcomm QCM2290 - Migrate Qualcomm IPQ4019 to clk_parent_data - Make USB GDSCs enter retention state when disabled on Qualcomm SM6375, MSM8996 and MSM8998 SoCs - Set floor rounding clk_ops for Qualcomm QCM2290 SDCC2 clk - Add two EMAC GDSCs on Qualcomm SC8280XP - Use shared rcg clk ops in Qualcomm SM6115 GCC - Park Qualcomm SM8350 PCIe PIPE clks when disabled - Add GDSCs to Qualcomm SC7280 LPASS audio clock controller - Add missing XO clocks to Qualcomm MSM8226 and MSM8974 - Convert some Qualcomm clk DT bindings to YAML - Reparenting fix for the clock supplying camera modules on Rockchip rk3399 - Mark more critical (bus-)clocks on Rockchip rk3588 -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEE9L57QeeUxqYDyoaDrQKIl8bklSUFAmRMbQURHHNib3lkQGtl cm5lbC5vcmcACgkQrQKIl8bklSUvyw//Vcqg0h8s+9npz0JsW+nffAXRguy1jum6 tj10++zA+NBhKxmfhyOs/v9UK1nb2DXAhcTIjUDcTDkVy0b2pBUQoGEGMyy9TLve q4MfWx7CwKwASUG2Lr3f1n4qi/vT4PEDlvYzUO94p7c6Y6f6P4JHTCJlJR7cNb4o MyXgiXMxQGaxT0XucSR9J32VxqSbF9KQvb8q+tPV3CDMIWi96aO5ZyewY6KF8a/7 chdXKYQXaYYG4/q4lNjZuvNQ2jidWqp0NlNw7M96U7SK5ESBryk4B4d1/J+QtzxX cuBTF1eoTKYlS3kPhhsuOhbsDi2SFE6D75ps5i9Y57ezSdS9qFcUsaNzUiN6t9ng uW+MRBTz20JDKBTLk6vD75O63fVDg3KG+kkLaF0Ax1Xa99sbrgBdNkPQ0Iu2AbSh assUmbz3s9MaPWj8LpOKLmactm4GbrQ2wtCEjguuynjaFoPUuyunReNkZ1yxfUUl MjRIYpvqVvYp29xHlBjN2cgttHjqVCBg8y7Io6RQonbIvnuN7Zo2cu+vbF7w7mdR 2HtGBe/OFsnZmmsr0pIGQOU25otheIHPudEYLlXEKx03FaMzAXnnDe9f6xXWaWxk Wz0YBofejlkP9ycLjRas2BZo3T66TtAlbQH2UhrSpJZV02Jwfi+JwBaLi9dOwZ7O VL5HI5FSlG8= =bTtL -----END PGP SIGNATURE----- Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux Pull clk updates from Stephen Boyd: "Nothing looks out of the ordinary in this batch of clk driver updates. There are a couple patches to the core clk framework, but they're all basically cleanups or debugging aids. The driver updates and new additions are dominated in the diffstat by Qualcomm and MediaTek drivers. Qualcomm gained a handful of new drivers for various SoCs, and MediaTek gained a bunch of drivers for MT8188. The MediaTek drivers are being modernized as well, so there are updates all over that vendor's clk drivers. There's also a couple other new clk drivers in here, for example the Starfive JH7110 SoC support is added. Outside of the two major SoC vendors though, we have the usual collection of non-critical fixes and cleanups to various clk drivers. It's good to see that we're getting more cleanups and modernization patches. Maybe one day we'll be able to properly split clk providers from clk consumers. Core: - Print an informational message before disabling unused clks New Drivers: - BCM63268 timer clock and reset controller - Frequency Hopping (FHCTL) on MediaTek MT6795, MT8173, MT8192 and MT8195 SoCs - Mediatek MT8188 SoC clk drivers - Clock driver for Sunplus SP7021 SoC - Clk driver support for Loongson-2 SoCs - Clock driver for Skyworks Si521xx I2C PCIe clock generators - Initial Starfive JH7110 clk/reset support - Global clock controller drivers for Qualcomm SM7150, IPQ9574, MSM8917 and IPQ5332 SoCs - GPU clock controller drivers for SM6115, SM6125, SM6375 and SA8775P SoCs Updates: - Shrink size of clk_fractional_divider a little - Convert various clk drivers to devm_of_clk_add_hw_provider() - Convert platform clk drivers to remove_new() - Converted most Mediatek clock drivers to struct platform_driver - MediaTek clock drivers can be built as modules - Reimplement Loongson-1 clk driver with DT support - Migrate socfpga clk driver to of_clk_add_hw_provider() - Support for i3c clks on Aspeed ast2600 SoCs - Add clock generic devm_clk_hw_register_gate_parent_data - Add audiomix block control for i.MX8MP - Add support for determine_rate to i.MX composite-8m - Let the LCDIF Pixel clock of i.MX8MM and i.MX8MN set parent rate - Provide clock name in error message for clk-gpr-mux on get parent failure - Drop duplicate imx_clk_mux_flags macro - Register the i.MX8MP Media Disp2 Pix clock as bus clock - Add Media LDB root clock to i.MX8MP - Make i.MX8MP nand_usdhc_bus clock as non-critical - Fix the rate table for i.MX fracn-gppll - Disable HW control for the fracn-gppll in order to be controlled by register write - Add support for interger PLL in fracn-gppll - Add mcore_booted module parameter to i.MX93 provider - Add NIC, A55 and ARM PLL clocks to i.MX93 - Fix i.MX8ULP XBAR_DIVBUS and AD_SLOW clock parents - Use "divider closest" clock type for PLL4_PFD dividers on i.MX8ULP to get more accurate clock rates - Mark the MU0_Bi and TPM5 clocks on i.MX8ULP as critical - Update some of the i.MX critical clocks flags to allow glitchless on-the-fly rate change. - Add I2C5 clock on Renesas R-Car V3H - Exynos850: Add CMU_G3D clock controller for the Mali GPU - Extract Exynos5433 (ARM64) clock controller power management code to common driver parts - Exynos850: make PMU_ALIVE_PCLK clock critical - Add Audio, thermal, camera (CSI-2), Image Signal Processor/Channel Selector (ISPCS), and video capture (VIN) clocks on Renesas R-Car V4H - Add video capture (VIN) clocks on Renesas R-Car V3H - Add Cortex-A53 System CPU (Z2) clocks on Renesas R-Car V3M and V3H - Support for Stromer Plus PLL on Qualcomm IPQ5332 - Add a missing reset to Qualcomm QCM2290 - Migrate Qualcomm IPQ4019 to clk_parent_data - Make USB GDSCs enter retention state when disabled on Qualcomm SM6375, MSM8996 and MSM8998 SoCs - Set floor rounding clk_ops for Qualcomm QCM2290 SDCC2 clk - Add two EMAC GDSCs on Qualcomm SC8280XP - Use shared rcg clk ops in Qualcomm SM6115 GCC - Park Qualcomm SM8350 PCIe PIPE clks when disabled - Add GDSCs to Qualcomm SC7280 LPASS audio clock controller - Add missing XO clocks to Qualcomm MSM8226 and MSM8974 - Convert some Qualcomm clk DT bindings to YAML - Reparenting fix for the clock supplying camera modules on Rockchip rk3399 - Mark more critical (bus-)clocks on Rockchip rk3588" * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (290 commits) clk: qcom: gcc-sc8280xp: Add EMAC GDSCs clk: starfive: Delete the redundant dev_set_drvdata() in JH7110 clock drivers clk: rockchip: rk3588: make gate linked clocks critical clk: qcom: dispcc-qcm2290: Remove inexistent DSI1PHY clk clk: qcom: add the GPUCC driver for sa8775p dt-bindings: clock: qcom: describe the GPUCC clock for SA8775P clk: qcom: gcc-sm8350: fix PCIe PIPE clocks handling clk: qcom: lpassaudiocc-sc7280: Add required gdsc power domain clks in lpass_cc_sc7280_desc clk: qcom: lpasscc-sc7280: Skip qdsp6ss clock registration dt-bindings: clock: qcom,sc7280-lpasscc: Add qcom,adsp-pil-mode property clk: starfive: Avoid casting iomem pointers clk: microchip: fix potential UAF in auxdev release callback clk: qcom: rpm: Use managed `of_clk_add_hw_provider()` clk: mediatek: fhctl: Mark local variables static clk: sifive: make SiFive clk drivers depend on ARCH_ symbols clk: uniphier: Use managed `of_clk_add_hw_provider()` clk: si5351: Use managed `of_clk_add_hw_provider()` clk: si570: Use managed `of_clk_add_hw_provider()` clk: si514: Use managed `of_clk_add_hw_provider()` clk: lmk04832: Use managed `of_clk_add_hw_provider()` ...
517 lines
16 KiB
Plaintext
517 lines
16 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
config HAVE_CLK
|
|
bool
|
|
help
|
|
The <linux/clk.h> calls support software clock gating and
|
|
thus are a key power management tool on many systems.
|
|
|
|
config HAVE_CLK_PREPARE
|
|
bool
|
|
|
|
config HAVE_LEGACY_CLK # TODO: Remove once all legacy users are migrated
|
|
bool
|
|
select HAVE_CLK
|
|
help
|
|
Select this option when the clock API in <linux/clk.h> is implemented
|
|
by platform/architecture code. This method is deprecated. Modern
|
|
code should select COMMON_CLK instead and not define a custom
|
|
'struct clk'.
|
|
|
|
menuconfig COMMON_CLK
|
|
bool "Common Clock Framework"
|
|
depends on !HAVE_LEGACY_CLK
|
|
select HAVE_CLK_PREPARE
|
|
select HAVE_CLK
|
|
select RATIONAL
|
|
help
|
|
The common clock framework is a single definition of struct
|
|
clk, useful across many platforms, as well as an
|
|
implementation of the clock API in include/linux/clk.h.
|
|
Architectures utilizing the common struct clk should select
|
|
this option.
|
|
|
|
if COMMON_CLK
|
|
|
|
config COMMON_CLK_WM831X
|
|
tristate "Clock driver for WM831x/2x PMICs"
|
|
depends on MFD_WM831X
|
|
help
|
|
Supports the clocking subsystem of the WM831x/2x series of
|
|
PMICs from Wolfson Microelectronics.
|
|
|
|
source "drivers/clk/versatile/Kconfig"
|
|
|
|
config CLK_HSDK
|
|
bool "PLL Driver for HSDK platform"
|
|
depends on ARC_SOC_HSDK || COMPILE_TEST
|
|
depends on HAS_IOMEM
|
|
help
|
|
This driver supports the HSDK core, system, ddr, tunnel and hdmi PLLs
|
|
control.
|
|
|
|
config LMK04832
|
|
tristate "Ti LMK04832 JESD204B Compliant Clock Jitter Cleaner"
|
|
depends on SPI
|
|
select REGMAP_SPI
|
|
help
|
|
Say yes here to build support for Texas Instruments' LMK04832 Ultra
|
|
Low-Noise JESD204B Compliant Clock Jitter Cleaner With Dual Loop PLLs
|
|
|
|
config COMMON_CLK_APPLE_NCO
|
|
tristate "Clock driver for Apple SoC NCOs"
|
|
depends on ARCH_APPLE || COMPILE_TEST
|
|
default ARCH_APPLE
|
|
help
|
|
This driver supports NCO (Numerically Controlled Oscillator) blocks
|
|
found on Apple SoCs such as t8103 (M1). The blocks are typically
|
|
generators of audio clocks.
|
|
|
|
config COMMON_CLK_MAX77686
|
|
tristate "Clock driver for Maxim 77620/77686/77802 MFD"
|
|
depends on MFD_MAX77686 || MFD_MAX77620 || COMPILE_TEST
|
|
help
|
|
This driver supports Maxim 77620/77686/77802 crystal oscillator
|
|
clock.
|
|
|
|
config COMMON_CLK_MAX9485
|
|
tristate "Maxim 9485 Programmable Clock Generator"
|
|
depends on I2C
|
|
help
|
|
This driver supports Maxim 9485 Programmable Audio Clock Generator
|
|
|
|
config COMMON_CLK_RK808
|
|
tristate "Clock driver for RK805/RK808/RK809/RK817/RK818"
|
|
depends on MFD_RK808
|
|
help
|
|
This driver supports RK805, RK809 and RK817, RK808 and RK818 crystal oscillator clock.
|
|
These multi-function devices have two fixed-rate oscillators, clocked at 32KHz each.
|
|
Clkout1 is always on, Clkout2 can off by control register.
|
|
|
|
config COMMON_CLK_HI655X
|
|
tristate "Clock driver for Hi655x" if EXPERT
|
|
depends on (MFD_HI655X_PMIC || COMPILE_TEST)
|
|
select REGMAP
|
|
default MFD_HI655X_PMIC
|
|
help
|
|
This driver supports the hi655x PMIC clock. This
|
|
multi-function device has one fixed-rate oscillator, clocked
|
|
at 32KHz.
|
|
|
|
config COMMON_CLK_SCMI
|
|
tristate "Clock driver controlled via SCMI interface"
|
|
depends on ARM_SCMI_PROTOCOL || COMPILE_TEST
|
|
help
|
|
This driver provides support for clocks that are controlled
|
|
by firmware that implements the SCMI interface.
|
|
|
|
This driver uses SCMI Message Protocol to interact with the
|
|
firmware providing all the clock controls.
|
|
|
|
config COMMON_CLK_SCPI
|
|
tristate "Clock driver controlled via SCPI interface"
|
|
depends on ARM_SCPI_PROTOCOL || COMPILE_TEST
|
|
help
|
|
This driver provides support for clocks that are controlled
|
|
by firmware that implements the SCPI interface.
|
|
|
|
This driver uses SCPI Message Protocol to interact with the
|
|
firmware providing all the clock controls.
|
|
|
|
config COMMON_CLK_SI5341
|
|
tristate "Clock driver for SiLabs 5341 and 5340 A/B/C/D devices"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports Silicon Labs Si5341 and Si5340 programmable clock
|
|
generators. Not all features of these chips are currently supported
|
|
by the driver, in particular it only supports XTAL input. The chip can
|
|
be pre-programmed to support other configurations and features not yet
|
|
implemented in the driver.
|
|
|
|
config COMMON_CLK_SI5351
|
|
tristate "Clock driver for SiLabs 5351A/B/C"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports Silicon Labs 5351A/B/C programmable clock
|
|
generators.
|
|
|
|
config COMMON_CLK_SI514
|
|
tristate "Clock driver for SiLabs 514 devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports the Silicon Labs 514 programmable clock
|
|
generator.
|
|
|
|
config COMMON_CLK_SI544
|
|
tristate "Clock driver for SiLabs 544 devices"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports the Silicon Labs 544 programmable clock
|
|
generator.
|
|
|
|
config COMMON_CLK_SI570
|
|
tristate "Clock driver for SiLabs 570 and compatible devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports Silicon Labs 570/571/598/599 programmable
|
|
clock generators.
|
|
|
|
config COMMON_CLK_BM1880
|
|
bool "Clock driver for Bitmain BM1880 SoC"
|
|
depends on ARCH_BITMAIN || COMPILE_TEST
|
|
default ARCH_BITMAIN
|
|
help
|
|
This driver supports the clocks on Bitmain BM1880 SoC.
|
|
|
|
config COMMON_CLK_CDCE706
|
|
tristate "Clock driver for TI CDCE706 clock synthesizer"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports TI CDCE706 programmable 3-PLL clock synthesizer.
|
|
|
|
config COMMON_CLK_TPS68470
|
|
tristate "Clock Driver for TI TPS68470 PMIC"
|
|
depends on I2C
|
|
depends on INTEL_SKL_INT3472 || COMPILE_TEST
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports the clocks provided by the TPS68470 PMIC.
|
|
|
|
config COMMON_CLK_CDCE925
|
|
tristate "Clock driver for TI CDCE913/925/937/949 devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports the TI CDCE913/925/937/949 programmable clock
|
|
synthesizer. Each chip has different number of PLLs and outputs.
|
|
For example, the CDCE925 contains two PLLs with spread-spectrum
|
|
clocking support and five output dividers. The driver only supports
|
|
the following setup, and uses a fixed setting for the output muxes.
|
|
Y1 is derived from the input clock
|
|
Y2 and Y3 derive from PLL1
|
|
Y4 and Y5 derive from PLL2
|
|
Given a target output frequency, the driver will set the PLL and
|
|
divider to best approximate the desired output.
|
|
|
|
config COMMON_CLK_CS2000_CP
|
|
tristate "Clock driver for CS2000 Fractional-N Clock Synthesizer & Clock Multiplier"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
If you say yes here you get support for the CS2000 clock multiplier.
|
|
|
|
config COMMON_CLK_EN7523
|
|
bool "Clock driver for Airoha EN7523 SoC system clocks"
|
|
depends on OF
|
|
depends on ARCH_AIROHA || COMPILE_TEST
|
|
default ARCH_AIROHA
|
|
help
|
|
This driver provides the fixed clocks and gates present on Airoha
|
|
ARM silicon.
|
|
|
|
config COMMON_CLK_FSL_FLEXSPI
|
|
tristate "Clock driver for FlexSPI on Layerscape SoCs"
|
|
depends on ARCH_LAYERSCAPE || COMPILE_TEST
|
|
default ARCH_LAYERSCAPE && SPI_NXP_FLEXSPI
|
|
help
|
|
On Layerscape SoCs there is a special clock for the FlexSPI
|
|
interface.
|
|
|
|
config COMMON_CLK_FSL_SAI
|
|
bool "Clock driver for BCLK of Freescale SAI cores"
|
|
depends on ARCH_LAYERSCAPE || COMPILE_TEST
|
|
help
|
|
This driver supports the Freescale SAI (Synchronous Audio Interface)
|
|
to be used as a generic clock output. Some SoCs have restrictions
|
|
regarding the possible pin multiplexer settings. Eg. on some SoCs
|
|
two SAI interfaces can only be enabled together. If just one is
|
|
needed, the BCLK pin of the second one can be used as general
|
|
purpose clock output. Ideally, it can be used to drive an audio
|
|
codec (sometimes known as MCLK).
|
|
|
|
config COMMON_CLK_GEMINI
|
|
bool "Clock driver for Cortina Systems Gemini SoC"
|
|
depends on ARCH_GEMINI || COMPILE_TEST
|
|
select MFD_SYSCON
|
|
select RESET_CONTROLLER
|
|
help
|
|
This driver supports the SoC clocks on the Cortina Systems Gemini
|
|
platform, also known as SL3516 or CS3516.
|
|
|
|
config COMMON_CLK_LAN966X
|
|
tristate "Generic Clock Controller driver for LAN966X SoC"
|
|
depends on HAS_IOMEM
|
|
depends on OF
|
|
depends on SOC_LAN966 || COMPILE_TEST
|
|
help
|
|
This driver provides support for Generic Clock Controller(GCK) on
|
|
LAN966X SoC. GCK generates and supplies clock to various peripherals
|
|
within the SoC.
|
|
|
|
config COMMON_CLK_ASPEED
|
|
bool "Clock driver for Aspeed BMC SoCs"
|
|
depends on ARCH_ASPEED || COMPILE_TEST
|
|
default ARCH_ASPEED
|
|
select MFD_SYSCON
|
|
select RESET_CONTROLLER
|
|
help
|
|
This driver supports the SoC clocks on the Aspeed BMC platforms.
|
|
|
|
The G4 and G5 series, including the ast2400 and ast2500, are supported
|
|
by this driver.
|
|
|
|
config COMMON_CLK_S2MPS11
|
|
tristate "Clock driver for S2MPS1X/S5M8767 MFD"
|
|
depends on MFD_SEC_CORE || COMPILE_TEST
|
|
help
|
|
This driver supports S2MPS11/S2MPS14/S5M8767 crystal oscillator
|
|
clock. These multi-function devices have two (S2MPS14) or three
|
|
(S2MPS11, S5M8767) fixed-rate oscillators, clocked at 32KHz each.
|
|
|
|
config CLK_TWL6040
|
|
tristate "External McPDM functional clock from twl6040"
|
|
depends on TWL6040_CORE
|
|
help
|
|
Enable the external functional clock support on OMAP4+ platforms for
|
|
McPDM. McPDM module is using the external bit clock on the McPDM bus
|
|
as functional clock.
|
|
|
|
config COMMON_CLK_AXI_CLKGEN
|
|
tristate "AXI clkgen driver"
|
|
depends on HAS_IOMEM || COMPILE_TEST
|
|
depends on OF
|
|
help
|
|
Support for the Analog Devices axi-clkgen pcore clock generator for Xilinx
|
|
FPGAs. It is commonly used in Analog Devices' reference designs.
|
|
|
|
config CLK_QORIQ
|
|
bool "Clock driver for Freescale QorIQ platforms"
|
|
depends on OF
|
|
depends on PPC_E500MC || SOC_LS1021A || ARCH_LAYERSCAPE || COMPILE_TEST
|
|
help
|
|
This adds the clock driver support for Freescale QorIQ platforms
|
|
using common clock framework.
|
|
|
|
config CLK_LS1028A_PLLDIG
|
|
tristate "Clock driver for LS1028A Display output"
|
|
depends on ARCH_LAYERSCAPE || COMPILE_TEST
|
|
default ARCH_LAYERSCAPE
|
|
help
|
|
This driver support the Display output interfaces(LCD, DPHY) pixel clocks
|
|
of the QorIQ Layerscape LS1028A, as implemented TSMC CLN28HPM PLL. Not all
|
|
features of the PLL are currently supported by the driver. By default,
|
|
configured bypass mode with this PLL.
|
|
|
|
config COMMON_CLK_XGENE
|
|
bool "Clock driver for APM XGene SoC"
|
|
default ARCH_XGENE
|
|
depends on ARM64 || COMPILE_TEST
|
|
help
|
|
Support for the APM X-Gene SoC reference, PLL, and device clocks.
|
|
|
|
config COMMON_CLK_LOCHNAGAR
|
|
tristate "Cirrus Logic Lochnagar clock driver"
|
|
depends on MFD_LOCHNAGAR
|
|
help
|
|
This driver supports the clocking features of the Cirrus Logic
|
|
Lochnagar audio development board.
|
|
|
|
config COMMON_CLK_LOONGSON2
|
|
bool "Clock driver for Loongson-2 SoC"
|
|
depends on LOONGARCH || COMPILE_TEST
|
|
help
|
|
This driver provides support for clock controller on Loongson-2 SoC.
|
|
The clock controller can generates and supplies clock to various
|
|
peripherals within the SoC.
|
|
Say Y here to support Loongson-2 SoC clock driver.
|
|
|
|
config COMMON_CLK_NXP
|
|
def_bool COMMON_CLK && (ARCH_LPC18XX || ARCH_LPC32XX)
|
|
select REGMAP_MMIO if ARCH_LPC32XX
|
|
select MFD_SYSCON if ARCH_LPC18XX
|
|
help
|
|
Support for clock providers on NXP platforms.
|
|
|
|
config COMMON_CLK_PALMAS
|
|
tristate "Clock driver for TI Palmas devices"
|
|
depends on MFD_PALMAS
|
|
help
|
|
This driver supports TI Palmas devices 32KHz output KG and KG_AUDIO
|
|
using common clock framework.
|
|
|
|
config COMMON_CLK_PWM
|
|
tristate "Clock driver for PWMs used as clock outputs"
|
|
depends on PWM
|
|
help
|
|
Adapter driver so that any PWM output can be (mis)used as clock signal
|
|
at 50% duty cycle.
|
|
|
|
config COMMON_CLK_PXA
|
|
def_bool COMMON_CLK && ARCH_PXA
|
|
help
|
|
Support for the Marvell PXA SoC.
|
|
|
|
config COMMON_CLK_OXNAS
|
|
bool "Clock driver for the OXNAS SoC Family"
|
|
depends on ARCH_OXNAS || COMPILE_TEST
|
|
select MFD_SYSCON
|
|
help
|
|
Support for the OXNAS SoC Family clocks.
|
|
|
|
config COMMON_CLK_RS9_PCIE
|
|
tristate "Clock driver for Renesas 9-series PCIe clock generators"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports the Renesas 9-series PCIe clock generator
|
|
models 9FGV/9DBV/9DMV/9FGL/9DML/9QXL/9SQ.
|
|
|
|
config COMMON_CLK_SI521XX
|
|
tristate "Clock driver for SkyWorks Si521xx PCIe clock generators"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports the SkyWorks Si521xx PCIe clock generator
|
|
models Si52144/Si52146/Si52147.
|
|
|
|
config COMMON_CLK_VC5
|
|
tristate "Clock driver for IDT VersaClock 5,6 devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
This driver supports the IDT VersaClock 5 and VersaClock 6
|
|
programmable clock generators.
|
|
|
|
config COMMON_CLK_VC7
|
|
tristate "Clock driver for Renesas Versaclock 7 devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
Renesas Versaclock7 is a family of configurable clock generator
|
|
and jitter attenuator ICs with fractional and integer dividers.
|
|
|
|
config COMMON_CLK_STM32MP135
|
|
def_bool COMMON_CLK && MACH_STM32MP13
|
|
help
|
|
Support for stm32mp135 SoC family clocks
|
|
|
|
config COMMON_CLK_STM32MP157
|
|
def_bool COMMON_CLK && MACH_STM32MP157
|
|
help
|
|
Support for stm32mp157 SoC family clocks
|
|
|
|
config COMMON_CLK_STM32F
|
|
def_bool COMMON_CLK && (MACH_STM32F429 || MACH_STM32F469 || MACH_STM32F746)
|
|
help
|
|
Support for stm32f4 and stm32f7 SoC families clocks
|
|
|
|
config COMMON_CLK_STM32H7
|
|
def_bool COMMON_CLK && MACH_STM32H743
|
|
help
|
|
Support for stm32h7 SoC family clocks
|
|
|
|
config COMMON_CLK_MMP2
|
|
def_bool COMMON_CLK && (MACH_MMP2_DT || MACH_MMP3_DT)
|
|
help
|
|
Support for Marvell MMP2 and MMP3 SoC clocks
|
|
|
|
config COMMON_CLK_MMP2_AUDIO
|
|
tristate "Clock driver for MMP2 Audio subsystem"
|
|
depends on COMMON_CLK_MMP2 || COMPILE_TEST
|
|
help
|
|
This driver supports clocks for Audio subsystem on MMP2 SoC.
|
|
|
|
config COMMON_CLK_BD718XX
|
|
tristate "Clock driver for 32K clk gates on ROHM PMICs"
|
|
depends on MFD_ROHM_BD718XX || MFD_ROHM_BD71828
|
|
help
|
|
This driver supports ROHM BD71837, BD71847, BD71850, BD71815
|
|
and BD71828 PMICs clock gates.
|
|
|
|
config COMMON_CLK_FIXED_MMIO
|
|
bool "Clock driver for Memory Mapped Fixed values"
|
|
depends on COMMON_CLK && OF
|
|
help
|
|
Support for Memory Mapped IO Fixed clocks
|
|
|
|
config COMMON_CLK_K210
|
|
bool "Clock driver for the Canaan Kendryte K210 SoC"
|
|
depends on OF && RISCV && SOC_CANAAN
|
|
default SOC_CANAAN
|
|
help
|
|
Support for the Canaan Kendryte K210 RISC-V SoC clocks.
|
|
|
|
config COMMON_CLK_SP7021
|
|
tristate "Clock driver for Sunplus SP7021 SoC"
|
|
depends on SOC_SP7021 || COMPILE_TEST
|
|
default SOC_SP7021
|
|
help
|
|
This driver supports the Sunplus SP7021 SoC clocks.
|
|
It implements SP7021 PLLs/gate.
|
|
Not all features of the PLL are currently supported
|
|
by the driver.
|
|
|
|
source "drivers/clk/actions/Kconfig"
|
|
source "drivers/clk/analogbits/Kconfig"
|
|
source "drivers/clk/baikal-t1/Kconfig"
|
|
source "drivers/clk/bcm/Kconfig"
|
|
source "drivers/clk/hisilicon/Kconfig"
|
|
source "drivers/clk/imgtec/Kconfig"
|
|
source "drivers/clk/imx/Kconfig"
|
|
source "drivers/clk/ingenic/Kconfig"
|
|
source "drivers/clk/keystone/Kconfig"
|
|
source "drivers/clk/mediatek/Kconfig"
|
|
source "drivers/clk/meson/Kconfig"
|
|
source "drivers/clk/mstar/Kconfig"
|
|
source "drivers/clk/microchip/Kconfig"
|
|
source "drivers/clk/mvebu/Kconfig"
|
|
source "drivers/clk/pistachio/Kconfig"
|
|
source "drivers/clk/qcom/Kconfig"
|
|
source "drivers/clk/ralink/Kconfig"
|
|
source "drivers/clk/renesas/Kconfig"
|
|
source "drivers/clk/rockchip/Kconfig"
|
|
source "drivers/clk/samsung/Kconfig"
|
|
source "drivers/clk/sifive/Kconfig"
|
|
source "drivers/clk/socfpga/Kconfig"
|
|
source "drivers/clk/sprd/Kconfig"
|
|
source "drivers/clk/starfive/Kconfig"
|
|
source "drivers/clk/sunxi/Kconfig"
|
|
source "drivers/clk/sunxi-ng/Kconfig"
|
|
source "drivers/clk/tegra/Kconfig"
|
|
source "drivers/clk/ti/Kconfig"
|
|
source "drivers/clk/uniphier/Kconfig"
|
|
source "drivers/clk/visconti/Kconfig"
|
|
source "drivers/clk/x86/Kconfig"
|
|
source "drivers/clk/xilinx/Kconfig"
|
|
source "drivers/clk/zynqmp/Kconfig"
|
|
|
|
# Kunit test cases
|
|
config CLK_KUNIT_TEST
|
|
tristate "Basic Clock Framework Kunit Tests" if !KUNIT_ALL_TESTS
|
|
depends on KUNIT
|
|
default KUNIT_ALL_TESTS
|
|
help
|
|
Kunit tests for the common clock framework.
|
|
|
|
config CLK_GATE_KUNIT_TEST
|
|
tristate "Basic gate type Kunit test" if !KUNIT_ALL_TESTS
|
|
depends on KUNIT
|
|
default KUNIT_ALL_TESTS
|
|
help
|
|
Kunit test for the basic clk gate type.
|
|
|
|
endif
|