1menu "Clock" 2 3config CLK 4 bool "Enable clock driver support" 5 depends on DM 6 help 7 This allows drivers to be provided for clock generators, including 8 oscillators and PLLs. Devices can use a common clock API to request 9 a particular clock rate and check on available clocks. Clocks can 10 feed into other clocks in a tree structure, with multiplexers to 11 choose the source for each clock. 12 13config SPL_CLK 14 bool "Enable clock support in SPL" 15 depends on CLK && SPL && SPL_DM 16 help 17 The clock subsystem adds a small amount of overhead to the image. 18 If this is acceptable and you have a need to use clock drivers in 19 SPL, enable this option. It might provide a cleaner interface to 20 setting up clocks within SPL, and allows the same drivers to be 21 used as U-Boot proper. 22 23config TPL_CLK 24 bool "Enable clock support in TPL" 25 depends on CLK && TPL_DM 26 help 27 The clock subsystem adds a small amount of overhead to the image. 28 If this is acceptable and you have a need to use clock drivers in 29 SPL, enable this option. It might provide a cleaner interface to 30 setting up clocks within TPL, and allows the same drivers to be 31 used as U-Boot proper. 32 33config VPL_CLK 34 bool "Enable clock support in VPL" 35 depends on CLK && VPL_DM 36 help 37 The clock subsystem adds a small amount of overhead to the image. 38 If this is acceptable and you have a need to use clock drivers in 39 SPL, enable this option. It might provide a cleaner interface to 40 setting up clocks within TPL, and allows the same drivers to be 41 used as U-Boot proper. 42 43config CLK_BCM6345 44 bool "Clock controller driver for BCM6345" 45 depends on CLK && ARCH_BMIPS 46 default y 47 help 48 This clock driver adds support for enabling and disabling peripheral 49 clocks on BCM6345 SoCs. HW has no rate changing capabilities. 50 51config CLK_BOSTON 52 def_bool y if TARGET_BOSTON 53 depends on CLK 54 select REGMAP 55 select SYSCON 56 help 57 Enable this to support the clocks 58 59config SPL_CLK_CCF 60 bool "SPL Common Clock Framework [CCF] support " 61 depends on SPL 62 help 63 Enable this option if you want to (re-)use the Linux kernel's Common 64 Clock Framework [CCF] code in U-Boot's SPL. 65 66config SPL_CLK_COMPOSITE_CCF 67 bool "SPL Common Clock Framework [CCF] composite clk support " 68 depends on SPL_CLK_CCF 69 help 70 Enable this option if you want to (re-)use the Linux kernel's Common 71 Clock Framework [CCF] composite code in U-Boot's SPL. 72 73config CLK_CCF 74 bool "Common Clock Framework [CCF] support " 75 help 76 Enable this option if you want to (re-)use the Linux kernel's Common 77 Clock Framework [CCF] code in U-Boot's clock driver. 78 79config CLK_COMPOSITE_CCF 80 bool "Common Clock Framework [CCF] composite clk support " 81 depends on CLK_CCF 82 help 83 Enable this option if you want to (re-)use the Linux kernel's Common 84 Clock Framework [CCF] composite code in U-Boot's clock driver. 85 86config CLK_BCM6345 87 bool "Clock controller driver for BCM6345" 88 depends on CLK && ARCH_BMIPS 89 default y 90 help 91 This clock driver adds support for enabling and disabling peripheral 92 clocks on BCM6345 SoCs. HW has no rate changing capabilities. 93 94config CLK_BOSTON 95 def_bool y if TARGET_BOSTON 96 depends on CLK 97 select REGMAP 98 select SYSCON 99 help 100 Enable this to support the clocks 101 102config CLK_CDCE9XX 103 bool "Enable CDCD9XX clock driver" 104 depends on CLK 105 help 106 Enable the clock synthesizer driver for CDCE913/925/937/949 107 series of chips. 108 109config CLK_ICS8N3QV01 110 bool "Enable ICS8N3QV01 VCXO driver" 111 depends on CLK 112 help 113 Support for the ICS8N3QV01 Quad-Frequency VCXO (Voltage-Controlled 114 Crystal Oscillator). The output frequency can be programmed via an 115 I2C interface. 116 117config CLK_INTEL 118 bool "Enable clock driver for Intel x86" 119 depends on CLK && X86 120 help 121 This provides very basic support for clocks on Intel SoCs. The driver 122 is barely used at present but could be expanded as needs arise. 123 Much clock configuration in U-Boot is either set up by the FSP, or 124 set up by U-Boot itself but only statically. Thus the driver does not 125 support changing clock rates, only querying them. 126 127config CLK_K210 128 bool "Clock support for Kendryte K210" 129 depends on CLK 130 help 131 This enables support clock driver for Kendryte K210 platforms. 132 133config CLK_K210_SET_RATE 134 bool "Enable setting the Kendryte K210 PLL rate" 135 depends on CLK_K210 136 help 137 Add functionality to calculate new rates for K210 PLLs. Enabling this 138 feature adds around 1K to U-Boot's final size. 139 140config CLK_MPC83XX 141 bool "Enable MPC83xx clock driver" 142 depends on CLK 143 help 144 Support for the clock driver of the MPC83xx series of SoCs. 145 146config CLK_OCTEON 147 bool "Clock controller driver for Marvell MIPS Octeon" 148 depends on CLK && ARCH_OCTEON 149 default y 150 help 151 Enable this to support the clocks on Octeon MIPS platforms. 152 153config SANDBOX_CLK_CCF 154 bool "Sandbox Common Clock Framework [CCF] support " 155 depends on SANDBOX 156 select CLK_CCF 157 help 158 Enable this option if you want to test the Linux kernel's Common 159 Clock Framework [CCF] code in U-Boot's Sandbox clock driver. 160 161config CLK_SCMI 162 bool "Enable SCMI clock driver" 163 depends on SCMI_FIRMWARE 164 help 165 Enable this option if you want to support clock devices exposed 166 by a SCMI agent based on SCMI clock protocol communication 167 with a SCMI server. 168 169config SPL_CLK_SCMI 170 bool "Enable SCMI clock driver in SPL" 171 depends on SCMI_FIRMWARE && SPL_FIRMWARE 172 help 173 Enable this option if you want to support clock devices exposed 174 by a SCMI agent based on SCMI clock protocol communication 175 with a SCMI server in SPL. 176 177config CLK_HSDK 178 bool "Enable cgu clock driver for HSDK boards" 179 depends on CLK && TARGET_HSDK 180 help 181 Enable this to support the cgu clocks on Synopsys ARC HSDK and 182 Synopsys ARC HSDK-4xD boards 183 184config CLK_VERSACLOCK 185 tristate "Enable VersaClock 5/6 devices" 186 depends on CLK 187 depends on CLK_CCF 188 depends on OF_CONTROL 189 help 190 This driver supports the IDT VersaClock 5 and VersaClock 6 191 programmable clock generators. 192 193config CLK_VERSAL 194 bool "Enable clock driver support for Versal" 195 depends on (ARCH_VERSAL || ARCH_VERSAL_NET) 196 imply ZYNQMP_FIRMWARE 197 help 198 This clock driver adds support for clock realted settings for 199 Versal platform. 200 201config CLK_VEXPRESS_OSC 202 bool "Enable driver for Arm Versatile Express OSC clock generators" 203 depends on CLK && VEXPRESS_CONFIG 204 help 205 This clock driver adds support for clock generators present on 206 Arm Versatile Express platforms. 207 208config CLK_XLNX_CLKWZRD 209 bool "Xilinx Clocking Wizard" 210 depends on CLK 211 help 212 Support for the Xilinx Clocking Wizard IP core clock generator. 213 The wizard support for dynamically reconfiguring the clocking 214 primitives for Multiply, Divide, Phase Shift/Offset, or Duty 215 Cycle. Limited by U-Boot clk uclass without set_phase API and 216 set_duty_cycle API, this driver only supports set_rate to modify 217 the frequency. 218 219config CLK_ZYNQ 220 bool "Enable clock driver support for Zynq" 221 depends on CLK && ARCH_ZYNQ 222 default y 223 help 224 This clock driver adds support for clock related settings for 225 Zynq platform. 226 227config CLK_ZYNQMP 228 bool "Enable clock driver support for ZynqMP" 229 depends on ARCH_ZYNQMP 230 imply ZYNQMP_FIRMWARE 231 help 232 This clock driver adds support for clock realted settings for 233 ZynqMP platform. 234 235source "drivers/clk/analogbits/Kconfig" 236source "drivers/clk/at91/Kconfig" 237source "drivers/clk/exynos/Kconfig" 238source "drivers/clk/imx/Kconfig" 239source "drivers/clk/meson/Kconfig" 240source "drivers/clk/microchip/Kconfig" 241source "drivers/clk/mvebu/Kconfig" 242source "drivers/clk/owl/Kconfig" 243source "drivers/clk/renesas/Kconfig" 244source "drivers/clk/sunxi/Kconfig" 245source "drivers/clk/sifive/Kconfig" 246source "drivers/clk/starfive/Kconfig" 247source "drivers/clk/stm32/Kconfig" 248source "drivers/clk/tegra/Kconfig" 249source "drivers/clk/ti/Kconfig" 250source "drivers/clk/uniphier/Kconfig" 251 252endmenu 253