1# SPDX-License-Identifier: GPL-2.0-only
2menu "Clock support for Amlogic platforms"
3	depends on ARCH_MESON || COMPILE_TEST
4
5config COMMON_CLK_MESON_REGMAP
6	tristate
7	select REGMAP
8
9config COMMON_CLK_MESON_DUALDIV
10	tristate
11	select COMMON_CLK_MESON_REGMAP
12
13config COMMON_CLK_MESON_MPLL
14	tristate
15	select COMMON_CLK_MESON_REGMAP
16
17config COMMON_CLK_MESON_PHASE
18	tristate
19	select COMMON_CLK_MESON_REGMAP
20
21config COMMON_CLK_MESON_PLL
22	tristate
23	select COMMON_CLK_MESON_REGMAP
24
25config COMMON_CLK_MESON_SCLK_DIV
26	tristate
27	select COMMON_CLK_MESON_REGMAP
28
29config COMMON_CLK_MESON_VID_PLL_DIV
30	tristate
31	select COMMON_CLK_MESON_REGMAP
32
33config COMMON_CLK_MESON_VCLK
34	tristate
35	select COMMON_CLK_MESON_REGMAP
36
37config COMMON_CLK_MESON_CLKC_UTILS
38	tristate
39
40config COMMON_CLK_MESON_AO_CLKC
41	tristate
42	select COMMON_CLK_MESON_REGMAP
43	select COMMON_CLK_MESON_CLKC_UTILS
44	select RESET_CONTROLLER
45
46config COMMON_CLK_MESON_EE_CLKC
47	tristate
48	select COMMON_CLK_MESON_REGMAP
49	select COMMON_CLK_MESON_CLKC_UTILS
50
51config COMMON_CLK_MESON_CPU_DYNDIV
52	tristate
53	select COMMON_CLK_MESON_REGMAP
54
55config COMMON_CLK_MESON8B
56	bool "Meson8 SoC Clock controller support"
57	depends on ARM
58	default y
59	select COMMON_CLK_MESON_REGMAP
60	select COMMON_CLK_MESON_CLKC_UTILS
61	select COMMON_CLK_MESON_MPLL
62	select COMMON_CLK_MESON_PLL
63	select MFD_SYSCON
64	select RESET_CONTROLLER
65	help
66	  Support for the clock controller on AmLogic S802 (Meson8),
67	  S805 (Meson8b) and S812 (Meson8m2) devices. Say Y if you
68	  want peripherals and CPU frequency scaling to work.
69
70config COMMON_CLK_GXBB
71	tristate "GXBB and GXL SoC clock controllers support"
72	depends on ARM64
73	default y
74	select COMMON_CLK_MESON_REGMAP
75	select COMMON_CLK_MESON_DUALDIV
76	select COMMON_CLK_MESON_VID_PLL_DIV
77	select COMMON_CLK_MESON_MPLL
78	select COMMON_CLK_MESON_PLL
79	select COMMON_CLK_MESON_AO_CLKC
80	select COMMON_CLK_MESON_EE_CLKC
81	select MFD_SYSCON
82	help
83	  Support for the clock controller on AmLogic S905 devices, aka gxbb.
84	  Say Y if you want peripherals and CPU frequency scaling to work.
85
86config COMMON_CLK_AXG
87	tristate "AXG SoC clock controllers support"
88	depends on ARM64
89	default y
90	select COMMON_CLK_MESON_REGMAP
91	select COMMON_CLK_MESON_DUALDIV
92	select COMMON_CLK_MESON_MPLL
93	select COMMON_CLK_MESON_PLL
94	select COMMON_CLK_MESON_AO_CLKC
95	select COMMON_CLK_MESON_EE_CLKC
96	select MFD_SYSCON
97	help
98	  Support for the clock controller on AmLogic A113D devices, aka axg.
99	  Say Y if you want peripherals and CPU frequency scaling to work.
100
101config COMMON_CLK_AXG_AUDIO
102	tristate "Meson AXG Audio Clock Controller Driver"
103	depends on ARM64
104	select COMMON_CLK_MESON_REGMAP
105	select COMMON_CLK_MESON_PHASE
106	select COMMON_CLK_MESON_SCLK_DIV
107	select COMMON_CLK_MESON_CLKC_UTILS
108	select REGMAP_MMIO
109	help
110	  Support for the audio clock controller on AmLogic A113D devices,
111	  aka axg, Say Y if you want audio subsystem to work.
112
113config COMMON_CLK_A1_PLL
114	tristate "Amlogic A1 SoC PLL controller support"
115	depends on ARM64
116	select COMMON_CLK_MESON_REGMAP
117	select COMMON_CLK_MESON_CLKC_UTILS
118	select COMMON_CLK_MESON_PLL
119	help
120	  Support for the PLL clock controller on Amlogic A113L based
121	  device, A1 SoC Family. Say Y if you want A1 PLL clock controller
122	  to work.
123
124config COMMON_CLK_A1_PERIPHERALS
125	tristate "Amlogic A1 SoC Peripherals clock controller support"
126	depends on ARM64
127	select COMMON_CLK_MESON_DUALDIV
128	select COMMON_CLK_MESON_REGMAP
129	select COMMON_CLK_MESON_CLKC_UTILS
130	help
131	  Support for the Peripherals clock controller on Amlogic A113L based
132	  device, A1 SoC Family. Say Y if you want A1 Peripherals clock
133	  controller to work.
134
135config COMMON_CLK_C3_PLL
136	tristate "Amlogic C3 PLL clock controller"
137	depends on ARM64
138	default y
139	select COMMON_CLK_MESON_REGMAP
140	select COMMON_CLK_MESON_PLL
141	select COMMON_CLK_MESON_CLKC_UTILS
142	imply COMMON_CLK_SCMI
143	help
144	  Support for the PLL clock controller on Amlogic C302X and C308L devices,
145	  AKA C3. Say Y if you want the board to work, because PLLs are the parent
146	  of most peripherals.
147
148config COMMON_CLK_C3_PERIPHERALS
149	tristate "Amlogic C3 peripherals clock controller"
150	depends on ARM64
151	default y
152	select COMMON_CLK_MESON_REGMAP
153	select COMMON_CLK_MESON_DUALDIV
154	select COMMON_CLK_MESON_CLKC_UTILS
155	imply COMMON_CLK_SCMI
156	imply COMMON_CLK_C3_PLL
157	help
158	  Support for the Peripherals clock controller on Amlogic C302X and
159	  C308L devices, AKA C3. Say Y if you want the peripherals clock to
160	  work.
161
162config COMMON_CLK_G12A
163	tristate "G12 and SM1 SoC clock controllers support"
164	depends on ARM64
165	default y
166	select COMMON_CLK_MESON_REGMAP
167	select COMMON_CLK_MESON_DUALDIV
168	select COMMON_CLK_MESON_MPLL
169	select COMMON_CLK_MESON_PLL
170	select COMMON_CLK_MESON_AO_CLKC
171	select COMMON_CLK_MESON_EE_CLKC
172	select COMMON_CLK_MESON_CPU_DYNDIV
173	select COMMON_CLK_MESON_VID_PLL_DIV
174	select COMMON_CLK_MESON_VCLK
175	select MFD_SYSCON
176	help
177	  Support for the clock controller on Amlogic S905D2, S905X2 and S905Y2
178	  devices, aka g12a. Say Y if you want peripherals to work.
179
180config COMMON_CLK_S4_PLL
181	tristate "S4 SoC PLL clock controllers support"
182	depends on ARM64
183	default y
184	select COMMON_CLK_MESON_CLKC_UTILS
185	select COMMON_CLK_MESON_MPLL
186	select COMMON_CLK_MESON_PLL
187	select COMMON_CLK_MESON_REGMAP
188	help
189	  Support for the PLL clock controller on Amlogic S805X2 and S905Y4 devices,
190	  AKA S4. Say Y if you want the board to work, because PLLs are the parent of
191	  most peripherals.
192
193config COMMON_CLK_S4_PERIPHERALS
194	tristate "S4 SoC peripherals clock controllers support"
195	depends on ARM64
196	default y
197	select COMMON_CLK_MESON_CLKC_UTILS
198	select COMMON_CLK_MESON_REGMAP
199	select COMMON_CLK_MESON_DUALDIV
200	select COMMON_CLK_MESON_VID_PLL_DIV
201	help
202	  Support for the peripherals clock controller on Amlogic S805X2 and S905Y4
203	  devices, AKA S4. Say Y if you want S4 peripherals clock controller to work.
204endmenu
205