xref: /openbmc/linux/drivers/clk/Kconfig (revision 1c2dd16a)
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_SCPI
51	tristate "Clock driver controlled via SCPI interface"
52	depends on ARM_SCPI_PROTOCOL || COMPILE_TEST
53	  ---help---
54	  This driver provides support for clocks that are controlled
55	  by firmware that implements the SCPI interface.
56
57	  This driver uses SCPI Message Protocol to interact with the
58	  firmware providing all the clock controls.
59
60config COMMON_CLK_SI5351
61	tristate "Clock driver for SiLabs 5351A/B/C"
62	depends on I2C
63	select REGMAP_I2C
64	select RATIONAL
65	---help---
66	  This driver supports Silicon Labs 5351A/B/C programmable clock
67	  generators.
68
69config COMMON_CLK_SI514
70	tristate "Clock driver for SiLabs 514 devices"
71	depends on I2C
72	depends on OF
73	select REGMAP_I2C
74	help
75	---help---
76	  This driver supports the Silicon Labs 514 programmable clock
77	  generator.
78
79config COMMON_CLK_SI570
80	tristate "Clock driver for SiLabs 570 and compatible devices"
81	depends on I2C
82	depends on OF
83	select REGMAP_I2C
84	help
85	---help---
86	  This driver supports Silicon Labs 570/571/598/599 programmable
87	  clock generators.
88
89config COMMON_CLK_CDCE706
90	tristate "Clock driver for TI CDCE706 clock synthesizer"
91	depends on I2C
92	select REGMAP_I2C
93	select RATIONAL
94	---help---
95	  This driver supports TI CDCE706 programmable 3-PLL clock synthesizer.
96
97config COMMON_CLK_CDCE925
98	tristate "Clock driver for TI CDCE913/925/937/949 devices"
99	depends on I2C
100	depends on OF
101	select REGMAP_I2C
102	help
103	---help---
104	  This driver supports the TI CDCE913/925/937/949 programmable clock
105	  synthesizer. Each chip has different number of PLLs and outputs.
106	  For example, the CDCE925 contains two PLLs with spread-spectrum
107	  clocking support and five output dividers. The driver only supports
108	  the following setup, and uses a fixed setting for the output muxes.
109	  Y1 is derived from the input clock
110	  Y2 and Y3 derive from PLL1
111	  Y4 and Y5 derive from PLL2
112	  Given a target output frequency, the driver will set the PLL and
113	  divider to best approximate the desired output.
114
115config COMMON_CLK_CS2000_CP
116	tristate "Clock driver for CS2000 Fractional-N Clock Synthesizer & Clock Multiplier"
117	depends on I2C
118	help
119	  If you say yes here you get support for the CS2000 clock multiplier.
120
121config COMMON_CLK_S2MPS11
122	tristate "Clock driver for S2MPS1X/S5M8767 MFD"
123	depends on MFD_SEC_CORE || COMPILE_TEST
124	---help---
125	  This driver supports S2MPS11/S2MPS14/S5M8767 crystal oscillator
126	  clock. These multi-function devices have two (S2MPS14) or three
127	  (S2MPS11, S5M8767) fixed-rate oscillators, clocked at 32KHz each.
128
129config CLK_TWL6040
130	tristate "External McPDM functional clock from twl6040"
131	depends on TWL6040_CORE
132	---help---
133	  Enable the external functional clock support on OMAP4+ platforms for
134	  McPDM. McPDM module is using the external bit clock on the McPDM bus
135	  as functional clock.
136
137config COMMON_CLK_AXI_CLKGEN
138	tristate "AXI clkgen driver"
139	depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
140	help
141	---help---
142	  Support for the Analog Devices axi-clkgen pcore clock generator for Xilinx
143	  FPGAs. It is commonly used in Analog Devices' reference designs.
144
145config CLK_QORIQ
146	bool "Clock driver for Freescale QorIQ platforms"
147	depends on (PPC_E500MC || ARM || ARM64 || COMPILE_TEST) && OF
148	---help---
149	  This adds the clock driver support for Freescale QorIQ platforms
150	  using common clock framework.
151
152config COMMON_CLK_XGENE
153	bool "Clock driver for APM XGene SoC"
154	default y
155	depends on ARM64 || COMPILE_TEST
156	---help---
157	  Sypport for the APM X-Gene SoC reference, PLL, and device clocks.
158
159config COMMON_CLK_KEYSTONE
160	tristate "Clock drivers for Keystone based SOCs"
161	depends on (ARCH_KEYSTONE || COMPILE_TEST) && OF
162	---help---
163          Supports clock drivers for Keystone based SOCs. These SOCs have local
164	  a power sleep control module that gate the clock to the IPs and PLLs.
165
166config COMMON_CLK_NXP
167	def_bool COMMON_CLK && (ARCH_LPC18XX || ARCH_LPC32XX)
168	select REGMAP_MMIO if ARCH_LPC32XX
169	select MFD_SYSCON if ARCH_LPC18XX
170	---help---
171	  Support for clock providers on NXP platforms.
172
173config COMMON_CLK_PALMAS
174	tristate "Clock driver for TI Palmas devices"
175	depends on MFD_PALMAS
176	---help---
177	  This driver supports TI Palmas devices 32KHz output KG and KG_AUDIO
178	  using common clock framework.
179
180config COMMON_CLK_PWM
181	tristate "Clock driver for PWMs used as clock outputs"
182	depends on PWM
183	---help---
184	  Adapter driver so that any PWM output can be (mis)used as clock signal
185	  at 50% duty cycle.
186
187config COMMON_CLK_PXA
188	def_bool COMMON_CLK && ARCH_PXA
189	---help---
190	  Support for the Marvell PXA SoC.
191
192config COMMON_CLK_PIC32
193	def_bool COMMON_CLK && MACH_PIC32
194
195config COMMON_CLK_OXNAS
196	bool "Clock driver for the OXNAS SoC Family"
197	depends on ARCH_OXNAS || COMPILE_TEST
198	select MFD_SYSCON
199	---help---
200	  Support for the OXNAS SoC Family clocks.
201
202config COMMON_CLK_VC5
203	tristate "Clock driver for IDT VersaClock5 devices"
204	depends on I2C
205	depends on OF
206	select REGMAP_I2C
207	help
208	---help---
209	  This driver supports the IDT VersaClock5 programmable clock
210	  generator.
211
212source "drivers/clk/bcm/Kconfig"
213source "drivers/clk/hisilicon/Kconfig"
214source "drivers/clk/mediatek/Kconfig"
215source "drivers/clk/meson/Kconfig"
216source "drivers/clk/mvebu/Kconfig"
217source "drivers/clk/qcom/Kconfig"
218source "drivers/clk/renesas/Kconfig"
219source "drivers/clk/samsung/Kconfig"
220source "drivers/clk/sunxi-ng/Kconfig"
221source "drivers/clk/tegra/Kconfig"
222source "drivers/clk/ti/Kconfig"
223source "drivers/clk/uniphier/Kconfig"
224
225endmenu
226