xref: /linux/drivers/clk/Kconfig (revision 7aacf86b75bc5523d20fd9127104384fce51ce9c)
1
2config CLKDEV_LOOKUP
3	bool
4	select HAVE_CLK
5
6config HAVE_CLK_PREPARE
7	bool
8
9config COMMON_CLK
10	bool
11	select HAVE_CLK_PREPARE
12	select CLKDEV_LOOKUP
13	select SRCU
14	select RATIONAL
15	---help---
16	  The common clock framework is a single definition of struct
17	  clk, useful across many platforms, as well as an
18	  implementation of the clock API in include/linux/clk.h.
19	  Architectures utilizing the common struct clk should select
20	  this option.
21
22menu "Common Clock Framework"
23	depends on COMMON_CLK
24
25config COMMON_CLK_WM831X
26	tristate "Clock driver for WM831x/2x PMICs"
27	depends on MFD_WM831X
28	---help---
29          Supports the clocking subsystem of the WM831x/2x series of
30	  PMICs from Wolfson Microelectronics.
31
32source "drivers/clk/versatile/Kconfig"
33
34config COMMON_CLK_MAX77686
35	tristate "Clock driver for Maxim 77620/77686/77802 MFD"
36	depends on MFD_MAX77686 || MFD_MAX77620 || COMPILE_TEST
37	---help---
38	  This driver supports Maxim 77620/77686/77802 crystal oscillator
39	  clock.
40
41config COMMON_CLK_RK808
42	tristate "Clock driver for RK808/RK818"
43	depends on MFD_RK808
44	---help---
45	  This driver supports RK808 and RK818 crystal oscillator clock. These
46	  multi-function devices have two fixed-rate oscillators,
47	  clocked at 32KHz each. Clkout1 is always on, Clkout2 can off
48	  by control register.
49
50config COMMON_CLK_HI655X
51	tristate "Clock driver for Hi655x"
52	depends on MFD_HI655X_PMIC || COMPILE_TEST
53	---help---
54	  This driver supports the hi655x PMIC clock. This
55	  multi-function device has one fixed-rate oscillator, clocked
56	  at 32KHz.
57
58config COMMON_CLK_SCPI
59	tristate "Clock driver controlled via SCPI interface"
60	depends on ARM_SCPI_PROTOCOL || COMPILE_TEST
61	  ---help---
62	  This driver provides support for clocks that are controlled
63	  by firmware that implements the SCPI interface.
64
65	  This driver uses SCPI Message Protocol to interact with the
66	  firmware providing all the clock controls.
67
68config COMMON_CLK_SI5351
69	tristate "Clock driver for SiLabs 5351A/B/C"
70	depends on I2C
71	select REGMAP_I2C
72	select RATIONAL
73	---help---
74	  This driver supports Silicon Labs 5351A/B/C programmable clock
75	  generators.
76
77config COMMON_CLK_SI514
78	tristate "Clock driver for SiLabs 514 devices"
79	depends on I2C
80	depends on OF
81	select REGMAP_I2C
82	help
83	---help---
84	  This driver supports the Silicon Labs 514 programmable clock
85	  generator.
86
87config COMMON_CLK_SI570
88	tristate "Clock driver for SiLabs 570 and compatible devices"
89	depends on I2C
90	depends on OF
91	select REGMAP_I2C
92	help
93	---help---
94	  This driver supports Silicon Labs 570/571/598/599 programmable
95	  clock generators.
96
97config COMMON_CLK_CDCE706
98	tristate "Clock driver for TI CDCE706 clock synthesizer"
99	depends on I2C
100	select REGMAP_I2C
101	select RATIONAL
102	---help---
103	  This driver supports TI CDCE706 programmable 3-PLL clock synthesizer.
104
105config COMMON_CLK_CDCE925
106	tristate "Clock driver for TI CDCE913/925/937/949 devices"
107	depends on I2C
108	depends on OF
109	select REGMAP_I2C
110	help
111	---help---
112	  This driver supports the TI CDCE913/925/937/949 programmable clock
113	  synthesizer. Each chip has different number of PLLs and outputs.
114	  For example, the CDCE925 contains two PLLs with spread-spectrum
115	  clocking support and five output dividers. The driver only supports
116	  the following setup, and uses a fixed setting for the output muxes.
117	  Y1 is derived from the input clock
118	  Y2 and Y3 derive from PLL1
119	  Y4 and Y5 derive from PLL2
120	  Given a target output frequency, the driver will set the PLL and
121	  divider to best approximate the desired output.
122
123config COMMON_CLK_CS2000_CP
124	tristate "Clock driver for CS2000 Fractional-N Clock Synthesizer & Clock Multiplier"
125	depends on I2C
126	help
127	  If you say yes here you get support for the CS2000 clock multiplier.
128
129config COMMON_CLK_GEMINI
130	bool "Clock driver for Cortina Systems Gemini SoC"
131	depends on ARCH_GEMINI || COMPILE_TEST
132	select MFD_SYSCON
133	select RESET_CONTROLLER
134	---help---
135	  This driver supports the SoC clocks on the Cortina Systems Gemini
136	  platform, also known as SL3516 or CS3516.
137
138config COMMON_CLK_S2MPS11
139	tristate "Clock driver for S2MPS1X/S5M8767 MFD"
140	depends on MFD_SEC_CORE || COMPILE_TEST
141	---help---
142	  This driver supports S2MPS11/S2MPS14/S5M8767 crystal oscillator
143	  clock. These multi-function devices have two (S2MPS14) or three
144	  (S2MPS11, S5M8767) fixed-rate oscillators, clocked at 32KHz each.
145
146config CLK_TWL6040
147	tristate "External McPDM functional clock from twl6040"
148	depends on TWL6040_CORE
149	---help---
150	  Enable the external functional clock support on OMAP4+ platforms for
151	  McPDM. McPDM module is using the external bit clock on the McPDM bus
152	  as functional clock.
153
154config COMMON_CLK_AXI_CLKGEN
155	tristate "AXI clkgen driver"
156	depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
157	help
158	---help---
159	  Support for the Analog Devices axi-clkgen pcore clock generator for Xilinx
160	  FPGAs. It is commonly used in Analog Devices' reference designs.
161
162config CLK_QORIQ
163	bool "Clock driver for Freescale QorIQ platforms"
164	depends on (PPC_E500MC || ARM || ARM64 || COMPILE_TEST) && OF
165	---help---
166	  This adds the clock driver support for Freescale QorIQ platforms
167	  using common clock framework.
168
169config COMMON_CLK_XGENE
170	bool "Clock driver for APM XGene SoC"
171	default y
172	depends on ARM64 || COMPILE_TEST
173	---help---
174	  Sypport for the APM X-Gene SoC reference, PLL, and device clocks.
175
176config COMMON_CLK_NXP
177	def_bool COMMON_CLK && (ARCH_LPC18XX || ARCH_LPC32XX)
178	select REGMAP_MMIO if ARCH_LPC32XX
179	select MFD_SYSCON if ARCH_LPC18XX
180	---help---
181	  Support for clock providers on NXP platforms.
182
183config COMMON_CLK_PALMAS
184	tristate "Clock driver for TI Palmas devices"
185	depends on MFD_PALMAS
186	---help---
187	  This driver supports TI Palmas devices 32KHz output KG and KG_AUDIO
188	  using common clock framework.
189
190config COMMON_CLK_PWM
191	tristate "Clock driver for PWMs used as clock outputs"
192	depends on PWM
193	---help---
194	  Adapter driver so that any PWM output can be (mis)used as clock signal
195	  at 50% duty cycle.
196
197config COMMON_CLK_PXA
198	def_bool COMMON_CLK && ARCH_PXA
199	---help---
200	  Support for the Marvell PXA SoC.
201
202config COMMON_CLK_PIC32
203	def_bool COMMON_CLK && MACH_PIC32
204
205config COMMON_CLK_OXNAS
206	bool "Clock driver for the OXNAS SoC Family"
207	depends on ARCH_OXNAS || COMPILE_TEST
208	select MFD_SYSCON
209	---help---
210	  Support for the OXNAS SoC Family clocks.
211
212config COMMON_CLK_VC5
213	tristate "Clock driver for IDT VersaClock5 devices"
214	depends on I2C
215	depends on OF
216	select REGMAP_I2C
217	help
218	---help---
219	  This driver supports the IDT VersaClock5 programmable clock
220	  generator.
221
222source "drivers/clk/bcm/Kconfig"
223source "drivers/clk/hisilicon/Kconfig"
224source "drivers/clk/imgtec/Kconfig"
225source "drivers/clk/keystone/Kconfig"
226source "drivers/clk/mediatek/Kconfig"
227source "drivers/clk/meson/Kconfig"
228source "drivers/clk/mvebu/Kconfig"
229source "drivers/clk/qcom/Kconfig"
230source "drivers/clk/renesas/Kconfig"
231source "drivers/clk/samsung/Kconfig"
232source "drivers/clk/sunxi-ng/Kconfig"
233source "drivers/clk/tegra/Kconfig"
234source "drivers/clk/ti/Kconfig"
235source "drivers/clk/uniphier/Kconfig"
236
237endmenu
238