xref: /openbmc/linux/drivers/clk/Kconfig (revision a36954f5)
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_S2MPS11
130	tristate "Clock driver for S2MPS1X/S5M8767 MFD"
131	depends on MFD_SEC_CORE || COMPILE_TEST
132	---help---
133	  This driver supports S2MPS11/S2MPS14/S5M8767 crystal oscillator
134	  clock. These multi-function devices have two (S2MPS14) or three
135	  (S2MPS11, S5M8767) fixed-rate oscillators, clocked at 32KHz each.
136
137config CLK_TWL6040
138	tristate "External McPDM functional clock from twl6040"
139	depends on TWL6040_CORE
140	---help---
141	  Enable the external functional clock support on OMAP4+ platforms for
142	  McPDM. McPDM module is using the external bit clock on the McPDM bus
143	  as functional clock.
144
145config COMMON_CLK_AXI_CLKGEN
146	tristate "AXI clkgen driver"
147	depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
148	help
149	---help---
150	  Support for the Analog Devices axi-clkgen pcore clock generator for Xilinx
151	  FPGAs. It is commonly used in Analog Devices' reference designs.
152
153config CLK_QORIQ
154	bool "Clock driver for Freescale QorIQ platforms"
155	depends on (PPC_E500MC || ARM || ARM64 || COMPILE_TEST) && OF
156	---help---
157	  This adds the clock driver support for Freescale QorIQ platforms
158	  using common clock framework.
159
160config COMMON_CLK_XGENE
161	bool "Clock driver for APM XGene SoC"
162	default y
163	depends on ARM64 || COMPILE_TEST
164	---help---
165	  Sypport for the APM X-Gene SoC reference, PLL, and device clocks.
166
167config COMMON_CLK_KEYSTONE
168	tristate "Clock drivers for Keystone based SOCs"
169	depends on (ARCH_KEYSTONE || COMPILE_TEST) && OF
170	---help---
171          Supports clock drivers for Keystone based SOCs. These SOCs have local
172	  a power sleep control module that gate the clock to the IPs and PLLs.
173
174config COMMON_CLK_NXP
175	def_bool COMMON_CLK && (ARCH_LPC18XX || ARCH_LPC32XX)
176	select REGMAP_MMIO if ARCH_LPC32XX
177	select MFD_SYSCON if ARCH_LPC18XX
178	---help---
179	  Support for clock providers on NXP platforms.
180
181config COMMON_CLK_PALMAS
182	tristate "Clock driver for TI Palmas devices"
183	depends on MFD_PALMAS
184	---help---
185	  This driver supports TI Palmas devices 32KHz output KG and KG_AUDIO
186	  using common clock framework.
187
188config COMMON_CLK_PWM
189	tristate "Clock driver for PWMs used as clock outputs"
190	depends on PWM
191	---help---
192	  Adapter driver so that any PWM output can be (mis)used as clock signal
193	  at 50% duty cycle.
194
195config COMMON_CLK_PXA
196	def_bool COMMON_CLK && ARCH_PXA
197	---help---
198	  Support for the Marvell PXA SoC.
199
200config COMMON_CLK_PIC32
201	def_bool COMMON_CLK && MACH_PIC32
202
203config COMMON_CLK_OXNAS
204	bool "Clock driver for the OXNAS SoC Family"
205	depends on ARCH_OXNAS || COMPILE_TEST
206	select MFD_SYSCON
207	---help---
208	  Support for the OXNAS SoC Family clocks.
209
210config COMMON_CLK_VC5
211	tristate "Clock driver for IDT VersaClock5 devices"
212	depends on I2C
213	depends on OF
214	select REGMAP_I2C
215	help
216	---help---
217	  This driver supports the IDT VersaClock5 programmable clock
218	  generator.
219
220source "drivers/clk/bcm/Kconfig"
221source "drivers/clk/hisilicon/Kconfig"
222source "drivers/clk/mediatek/Kconfig"
223source "drivers/clk/meson/Kconfig"
224source "drivers/clk/mvebu/Kconfig"
225source "drivers/clk/qcom/Kconfig"
226source "drivers/clk/renesas/Kconfig"
227source "drivers/clk/samsung/Kconfig"
228source "drivers/clk/sunxi-ng/Kconfig"
229source "drivers/clk/tegra/Kconfig"
230source "drivers/clk/ti/Kconfig"
231source "drivers/clk/uniphier/Kconfig"
232
233endmenu
234