Merge branches 'clk-ofnode', 'clk-bindings', 'clk-cleanup', 'clk-zynq' and 'clk-xilin...
[platform/kernel/linux-starfive.git] / drivers / clk / qcom / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 config KRAIT_CLOCKS
3         bool
4         select KRAIT_L2_ACCESSORS
5
6 config QCOM_GDSC
7         bool
8         select PM_GENERIC_DOMAINS if PM
9
10 config QCOM_RPMCC
11         bool
12
13 menuconfig COMMON_CLK_QCOM
14         tristate "Support for Qualcomm's clock controllers"
15         depends on OF
16         depends on ARCH_QCOM || COMPILE_TEST
17         select RATIONAL
18         select REGMAP_MMIO
19         select RESET_CONTROLLER
20
21 if COMMON_CLK_QCOM
22
23 config QCOM_A53PLL
24         tristate "MSM8916 A53 PLL"
25         help
26           Support for the A53 PLL on MSM8916 devices. It provides
27           the CPU with frequencies above 1GHz.
28           Say Y if you want to support higher CPU frequencies on MSM8916
29           devices.
30
31 config QCOM_A7PLL
32         tristate "A7 PLL driver for SDX55 and SDX65"
33         help
34           Support for the A7 PLL on SDX55 and SDX65 devices. It provides the CPU with
35           frequencies above 1GHz.
36           Say Y if you want to support higher CPU frequencies on SDX55 and SDX65
37           devices.
38
39 config QCOM_CLK_APCS_MSM8916
40         tristate "MSM8916 APCS Clock Controller"
41         depends on QCOM_APCS_IPC || COMPILE_TEST
42         help
43           Support for the APCS Clock Controller on msm8916 devices. The
44           APCS is managing the mux and divider which feeds the CPUs.
45           Say Y if you want to support CPU frequency scaling on devices
46           such as msm8916.
47
48 config QCOM_CLK_APCC_MSM8996
49         tristate "MSM8996 CPU Clock Controller"
50         select QCOM_KRYO_L2_ACCESSORS
51         depends on ARM64
52         help
53           Support for the CPU clock controller on msm8996 devices.
54           Say Y if you want to support CPU clock scaling using CPUfreq
55           drivers for dynamic power management.
56
57 config QCOM_CLK_APCS_SDX55
58         tristate "SDX55 and SDX65 APCS Clock Controller"
59         depends on QCOM_APCS_IPC || COMPILE_TEST
60         help
61           Support for the APCS Clock Controller on SDX55, SDX65 platforms. The
62           APCS is managing the mux and divider which feeds the CPUs.
63           Say Y if you want to support CPU frequency scaling on devices
64           such as SDX55, SDX65.
65
66 config QCOM_CLK_RPM
67         tristate "RPM based Clock Controller"
68         depends on MFD_QCOM_RPM
69         select QCOM_RPMCC
70         help
71           The RPM (Resource Power Manager) is a dedicated hardware engine for
72           managing the shared SoC resources in order to keep the lowest power
73           profile. It communicates with other hardware subsystems via shared
74           memory and accepts clock requests, aggregates the requests and turns
75           the clocks on/off or scales them on demand.
76           Say Y if you want to support the clocks exposed by the RPM on
77           platforms such as apq8064, msm8660, msm8960 etc.
78
79 config QCOM_CLK_SMD_RPM
80         tristate "RPM over SMD based Clock Controller"
81         depends on QCOM_SMD_RPM
82         select QCOM_RPMCC
83         help
84           The RPM (Resource Power Manager) is a dedicated hardware engine for
85           managing the shared SoC resources in order to keep the lowest power
86           profile. It communicates with other hardware subsystems via shared
87           memory and accepts clock requests, aggregates the requests and turns
88           the clocks on/off or scales them on demand.
89           Say Y if you want to support the clocks exposed by the RPM on
90           platforms such as apq8016, apq8084, msm8974 etc.
91
92 config QCOM_CLK_RPMH
93         tristate "RPMh Clock Driver"
94         depends on QCOM_RPMH
95         help
96          RPMh manages shared resources on some Qualcomm Technologies, Inc.
97          SoCs. It accepts requests from other hardware subsystems via RSC.
98          Say Y if you want to support the clocks exposed by RPMh on
99          platforms such as SDM845.
100
101 config APQ_GCC_8084
102         tristate "APQ8084 Global Clock Controller"
103         select QCOM_GDSC
104         help
105           Support for the global clock controller on apq8084 devices.
106           Say Y if you want to use peripheral devices such as UART, SPI,
107           i2c, USB, SD/eMMC, SATA, PCIe, etc.
108
109 config APQ_MMCC_8084
110         tristate "APQ8084 Multimedia Clock Controller"
111         select APQ_GCC_8084
112         select QCOM_GDSC
113         help
114           Support for the multimedia clock controller on apq8084 devices.
115           Say Y if you want to support multimedia devices such as display,
116           graphics, video encode/decode, camera, etc.
117
118 config IPQ_APSS_PLL
119         tristate "IPQ APSS PLL"
120         help
121           Support for APSS PLL on ipq devices. The APSS PLL is the main
122           clock that feeds the CPUs on ipq based devices.
123           Say Y if you want to support CPU frequency scaling on ipq based
124           devices.
125
126 config IPQ_APSS_6018
127         tristate "IPQ APSS Clock Controller"
128         select IPQ_APSS_PLL
129         depends on QCOM_APCS_IPC || COMPILE_TEST
130         help
131           Support for APSS clock controller on IPQ platforms. The
132           APSS clock controller manages the Mux and enable block that feeds the
133           CPUs.
134           Say Y if you want to support CPU frequency scaling on
135           ipq based devices.
136
137 config IPQ_GCC_4019
138         tristate "IPQ4019 Global Clock Controller"
139         help
140           Support for the global clock controller on ipq4019 devices.
141           Say Y if you want to use peripheral devices such as UART, SPI,
142           i2c, USB, SD/eMMC, etc.
143
144 config IPQ_GCC_6018
145         tristate "IPQ6018 Global Clock Controller"
146         help
147           Support for global clock controller on ipq6018 devices.
148           Say Y if you want to use peripheral devices such as UART, SPI,
149           i2c, USB, SD/eMMC, etc. Select this for the root clock
150           of ipq6018.
151
152 config IPQ_GCC_806X
153         tristate "IPQ806x Global Clock Controller"
154         help
155           Support for the global clock controller on ipq806x devices.
156           Say Y if you want to use peripheral devices such as UART, SPI,
157           i2c, USB, SD/eMMC, etc.
158
159 config IPQ_LCC_806X
160         tristate "IPQ806x LPASS Clock Controller"
161         select IPQ_GCC_806X
162         help
163           Support for the LPASS clock controller on ipq806x devices.
164           Say Y if you want to use audio devices such as i2s, pcm,
165           S/PDIF, etc.
166
167 config IPQ_GCC_8074
168         tristate "IPQ8074 Global Clock Controller"
169         select QCOM_GDSC
170         help
171           Support for global clock controller on ipq8074 devices.
172           Say Y if you want to use peripheral devices such as UART, SPI,
173           i2c, USB, SD/eMMC, etc. Select this for the root clock
174           of ipq8074.
175
176 config MSM_GCC_8660
177         tristate "MSM8660 Global Clock Controller"
178         help
179           Support for the global clock controller on msm8660 devices.
180           Say Y if you want to use peripheral devices such as UART, SPI,
181           i2c, USB, SD/eMMC, etc.
182
183 config MSM_GCC_8916
184         tristate "MSM8916 Global Clock Controller"
185         select QCOM_GDSC
186         help
187           Support for the global clock controller on msm8916 devices.
188           Say Y if you want to use devices such as UART, SPI i2c, USB,
189           SD/eMMC, display, graphics, camera etc.
190
191 config MSM_GCC_8939
192         tristate "MSM8939 Global Clock Controller"
193         select QCOM_GDSC
194         help
195           Support for the global clock controller on msm8939 devices.
196           Say Y if you want to use devices such as UART, SPI i2c, USB,
197           SD/eMMC, display, graphics, camera etc.
198
199 config MSM_GCC_8960
200         tristate "APQ8064/MSM8960 Global Clock Controller"
201         help
202           Support for the global clock controller on apq8064/msm8960 devices.
203           Say Y if you want to use peripheral devices such as UART, SPI,
204           i2c, USB, SD/eMMC, SATA, PCIe, etc.
205
206 config MSM_LCC_8960
207         tristate "APQ8064/MSM8960 LPASS Clock Controller"
208         select MSM_GCC_8960
209         help
210           Support for the LPASS clock controller on apq8064/msm8960 devices.
211           Say Y if you want to use audio devices such as i2s, pcm,
212           SLIMBus, etc.
213
214 config MDM_GCC_9607
215         tristate "MDM9607 Global Clock Controller"
216         help
217           Support for the global clock controller on mdm9607 devices.
218           Say Y if you want to use peripheral devices such as UART, SPI,
219           I2C, USB, SD/eMMC, etc.
220
221 config MDM_GCC_9615
222         tristate "MDM9615 Global Clock Controller"
223         help
224           Support for the global clock controller on mdm9615 devices.
225           Say Y if you want to use peripheral devices such as UART, SPI,
226           i2c, USB, SD/eMMC, etc.
227
228 config MDM_LCC_9615
229         tristate "MDM9615 LPASS Clock Controller"
230         select MDM_GCC_9615
231         help
232           Support for the LPASS clock controller on mdm9615 devices.
233           Say Y if you want to use audio devices such as i2s, pcm,
234           SLIMBus, etc.
235
236 config MSM_MMCC_8960
237         tristate "MSM8960 Multimedia Clock Controller"
238         select MSM_GCC_8960
239         help
240           Support for the multimedia clock controller on msm8960 devices.
241           Say Y if you want to support multimedia devices such as display,
242           graphics, video encode/decode, camera, etc.
243
244 config MSM_GCC_8953
245         tristate "MSM8953 Global Clock Controller"
246         select QCOM_GDSC
247         help
248           Support for the global clock controller on msm8953 devices.
249           Say Y if you want to use devices such as UART, SPI i2c, USB,
250           SD/eMMC, display, graphics, camera etc.
251
252 config MSM_GCC_8974
253         tristate "MSM8974 Global Clock Controller"
254         select QCOM_GDSC
255         help
256           Support for the global clock controller on msm8974 devices.
257           Say Y if you want to use peripheral devices such as UART, SPI,
258           i2c, USB, SD/eMMC, SATA, PCIe, etc.
259
260 config MSM_MMCC_8974
261         tristate "MSM8974 Multimedia Clock Controller"
262         select MSM_GCC_8974
263         select QCOM_GDSC
264         help
265           Support for the multimedia clock controller on msm8974 devices.
266           Say Y if you want to support multimedia devices such as display,
267           graphics, video encode/decode, camera, etc.
268
269 config MSM_GCC_8976
270         tristate "MSM8956/76 Global Clock Controller"
271         select QCOM_GDSC
272         help
273           Support for the global clock controller on msm8956/76 devices.
274           Say Y if you want to use peripheral devices such as UART, SPI,
275           i2c, USB, SD/eMMC, SATA, PCIe, etc.
276
277 config MSM_MMCC_8994
278         tristate "MSM8994 Multimedia Clock Controller"
279         select MSM_GCC_8994
280         select QCOM_GDSC
281         help
282           Support for the multimedia clock controller on msm8994 devices.
283           Say Y if you want to support multimedia devices such as display,
284           graphics, video encode/decode, camera, etc.
285
286 config MSM_GCC_8994
287         tristate "MSM8994 Global Clock Controller"
288         help
289           Support for the global clock controller on msm8994 devices.
290           Say Y if you want to use peripheral devices such as UART, SPI,
291           i2c, USB, UFS, SD/eMMC, PCIe, etc.
292
293 config MSM_GCC_8996
294         tristate "MSM8996 Global Clock Controller"
295         select QCOM_GDSC
296         help
297           Support for the global clock controller on msm8996 devices.
298           Say Y if you want to use peripheral devices such as UART, SPI,
299           i2c, USB, UFS, SD/eMMC, PCIe, etc.
300
301 config MSM_MMCC_8996
302         tristate "MSM8996 Multimedia Clock Controller"
303         select MSM_GCC_8996
304         select QCOM_GDSC
305         help
306           Support for the multimedia clock controller on msm8996 devices.
307           Say Y if you want to support multimedia devices such as display,
308           graphics, video encode/decode, camera, etc.
309
310 config MSM_GCC_8998
311         tristate "MSM8998 Global Clock Controller"
312         select QCOM_GDSC
313         help
314           Support for the global clock controller on msm8998 devices.
315           Say Y if you want to use peripheral devices such as UART, SPI,
316           i2c, USB, UFS, SD/eMMC, PCIe, etc.
317
318 config MSM_GPUCC_8998
319         tristate "MSM8998 Graphics Clock Controller"
320         select MSM_GCC_8998
321         select QCOM_GDSC
322         help
323           Support for the graphics clock controller on MSM8998 devices.
324           Say Y if you want to support graphics controller devices and
325           functionality such as 3D graphics.
326
327 config MSM_MMCC_8998
328         tristate "MSM8998 Multimedia Clock Controller"
329         select MSM_GCC_8998
330         select QCOM_GDSC
331         help
332           Support for the multimedia clock controller on msm8998 devices.
333           Say Y if you want to support multimedia devices such as display,
334           graphics, video encode/decode, camera, etc.
335
336 config QCM_GCC_2290
337         tristate "QCM2290 Global Clock Controller"
338         select QCOM_GDSC
339         help
340           Support for the global clock controller on QCM2290 devices.
341           Say Y if you want to use multimedia devices or peripheral
342           devices such as UART, SPI, I2C, USB, SD/eMMC etc.
343
344 config QCM_DISPCC_2290
345         tristate "QCM2290 Display Clock Controller"
346         select QCM_GCC_2290
347         help
348           Support for the display clock controller on Qualcomm Technologies, Inc
349           QCM2290 devices.
350           Say Y if you want to support display devices and functionality such as
351           splash screen.
352
353 config QCS_GCC_404
354         tristate "QCS404 Global Clock Controller"
355         help
356           Support for the global clock controller on QCS404 devices.
357           Say Y if you want to use multimedia devices or peripheral
358           devices such as UART, SPI, I2C, USB, SD/eMMC, PCIe etc.
359
360 config SC_CAMCC_7180
361         tristate "SC7180 Camera Clock Controller"
362         select SC_GCC_7180
363         help
364           Support for the camera clock controller on Qualcomm Technologies, Inc
365           SC7180 devices.
366           Say Y if you want to support camera devices and functionality such as
367           capturing pictures.
368
369 config SC_CAMCC_7280
370         tristate "SC7280 Camera Clock Controller"
371         select SC_GCC_7280
372         help
373           Support for the camera clock controller on Qualcomm Technologies, Inc
374           SC7280 devices.
375           Say Y if you want to support camera devices and functionality such as
376           capturing pictures.
377
378 config SC_DISPCC_7180
379         tristate "SC7180 Display Clock Controller"
380         select SC_GCC_7180
381         help
382           Support for the display clock controller on Qualcomm Technologies, Inc
383           SC7180 devices.
384           Say Y if you want to support display devices and functionality such as
385           splash screen.
386
387 config SC_DISPCC_7280
388         tristate "SC7280 Display Clock Controller"
389         select SC_GCC_7280
390         help
391           Support for the display clock controller on Qualcomm Technologies, Inc.
392           SC7280 devices.
393           Say Y if you want to support display devices and functionality such as
394           splash screen.
395
396 config SC_GCC_7180
397         tristate "SC7180 Global Clock Controller"
398         select QCOM_GDSC
399         depends on COMMON_CLK_QCOM
400         help
401           Support for the global clock controller on SC7180 devices.
402           Say Y if you want to use peripheral devices such as UART, SPI,
403           I2C, USB, UFS, SDCC, etc.
404
405 config SC_GCC_7280
406         tristate "SC7280 Global Clock Controller"
407         select QCOM_GDSC
408         depends on COMMON_CLK_QCOM
409         help
410           Support for the global clock controller on SC7280 devices.
411           Say Y if you want to use peripheral devices such as UART, SPI,
412           I2C, USB, UFS, SDCC, PCIe etc.
413
414 config SC_GCC_8180X
415         tristate "SC8180X Global Clock Controller"
416         select QCOM_GDSC
417         depends on COMMON_CLK_QCOM
418         help
419           Support for the global clock controller on SC8180X devices.
420           Say Y if you want to use peripheral devices such as UART, SPI,
421           I2C, USB, UFS, SDCC, etc.
422
423 config SC_GCC_8280XP
424         tristate "SC8280XP Global Clock Controller"
425         select QCOM_GDSC
426         depends on COMMON_CLK_QCOM
427         help
428           Support for the global clock controller on SC8280XP devices.
429           Say Y if you want to use peripheral devices such as UART, SPI,
430           I2C, USB, UFS, SDCC, etc.
431
432 config SC_GPUCC_7180
433         tristate "SC7180 Graphics Clock Controller"
434         select SC_GCC_7180
435         help
436           Support for the graphics clock controller on SC7180 devices.
437           Say Y if you want to support graphics controller devices and
438           functionality such as 3D graphics.
439
440 config SC_GPUCC_7280
441         tristate "SC7280 Graphics Clock Controller"
442         select SC_GCC_7280
443         help
444           Support for the graphics clock controller on SC7280 devices.
445           Say Y if you want to support graphics controller devices and
446           functionality such as 3D graphics.
447
448 config SC_LPASSCC_7280
449         tristate "SC7280 Low Power Audio Subsystem (LPASS) Clock Controller"
450         select SC_GCC_7280
451         help
452           Support for the LPASS clock controller on SC7280 devices.
453           Say Y if you want to use the LPASS branch clocks of the LPASS clock
454           controller to reset the LPASS subsystem.
455
456 config SC_LPASS_CORECC_7180
457         tristate "SC7180 LPASS Core Clock Controller"
458         select SC_GCC_7180
459         help
460           Support for the LPASS(Low Power Audio Subsystem) core clock controller
461           on SC7180 devices.
462           Say Y if you want to use LPASS clocks and power domains of the LPASS
463           core clock controller.
464
465 config SC_LPASS_CORECC_7280
466         tristate "SC7280 LPASS Core & Audio Clock Controller"
467         select SC_GCC_7280
468         select QCOM_GDSC
469         help
470           Support for the LPASS(Low Power Audio Subsystem) core and audio clock
471           controller on SC7280 devices.
472           Say Y if you want to use LPASS clocks and power domains of the LPASS
473           core clock controller.
474
475 config SC_MSS_7180
476         tristate "SC7180 Modem Clock Controller"
477         select SC_GCC_7180
478         help
479           Support for the Modem Subsystem clock controller on Qualcomm
480           Technologies, Inc on SC7180 devices.
481           Say Y if you want to use the Modem branch clocks of the Modem
482           subsystem clock controller to reset the MSS subsystem.
483
484 config SC_VIDEOCC_7180
485         tristate "SC7180 Video Clock Controller"
486         select SC_GCC_7180
487         help
488           Support for the video clock controller on SC7180 devices.
489           Say Y if you want to support video devices and functionality such as
490           video encode and decode.
491
492 config SC_VIDEOCC_7280
493         tristate "SC7280 Video Clock Controller"
494         select SC_GCC_7280
495         help
496           Support for the video clock controller on SC7280 devices.
497           Say Y if you want to support video devices and functionality such as
498           video encode and decode.
499
500 config SDM_CAMCC_845
501         tristate "SDM845 Camera Clock Controller"
502         select SDM_GCC_845
503         help
504           Support for the camera clock controller on SDM845 devices.
505           Say Y if you want to support camera devices and camera functionality.
506
507 config SDM_GCC_660
508         tristate "SDM660 Global Clock Controller"
509         select QCOM_GDSC
510         help
511           Support for the global clock controller on SDM660 devices.
512           Say Y if you want to use peripheral devices such as UART, SPI,
513           i2C, USB, UFS, SDDC, PCIe, etc.
514
515 config SDM_MMCC_660
516         tristate "SDM660 Multimedia Clock Controller"
517         select SDM_GCC_660
518         select QCOM_GDSC
519         help
520           Support for the multimedia clock controller on SDM660 devices.
521           Say Y if you want to support multimedia devices such as display,
522           graphics, video encode/decode, camera, etc.
523
524 config SDM_GPUCC_660
525         tristate "SDM660 Graphics Clock Controller"
526         select SDM_GCC_660
527         select QCOM_GDSC
528         help
529           Support for the graphics clock controller on SDM630/636/660 devices.
530           Say Y if you want to support graphics controller devices and
531           functionality such as 3D graphics
532
533 config QCS_TURING_404
534         tristate "QCS404 Turing Clock Controller"
535         help
536           Support for the Turing Clock Controller on QCS404, provides clocks
537           and resets for the Turing subsystem.
538
539 config QCS_Q6SSTOP_404
540         tristate "QCS404 Q6SSTOP Clock Controller"
541         select QCS_GCC_404
542         help
543           Support for the Q6SSTOP clock controller on QCS404 devices.
544           Say Y if you want to use the Q6SSTOP branch clocks of the WCSS clock
545           controller to reset the Q6SSTOP subsystem.
546
547 config SDM_GCC_845
548         tristate "SDM845 Global Clock Controller"
549         select QCOM_GDSC
550         help
551           Support for the global clock controller on SDM845 devices.
552           Say Y if you want to use peripheral devices such as UART, SPI,
553           i2C, USB, UFS, SDDC, PCIe, etc.
554
555 config SDM_GPUCC_845
556         tristate "SDM845 Graphics Clock Controller"
557         select SDM_GCC_845
558         help
559           Support for the graphics clock controller on SDM845 devices.
560           Say Y if you want to support graphics controller devices and
561           functionality such as 3D graphics.
562
563 config SDM_VIDEOCC_845
564         tristate "SDM845 Video Clock Controller"
565         select SDM_GCC_845
566         select QCOM_GDSC
567         help
568           Support for the video clock controller on SDM845 devices.
569           Say Y if you want to support video devices and functionality such as
570           video encode and decode.
571
572 config SDM_DISPCC_845
573         tristate "SDM845 Display Clock Controller"
574         select SDM_GCC_845
575         help
576           Support for the display clock controller on Qualcomm Technologies, Inc
577           SDM845 devices.
578           Say Y if you want to support display devices and functionality such as
579           splash screen.
580
581 config SDM_LPASSCC_845
582         tristate "SDM845 Low Power Audio Subsystem (LPAAS) Clock Controller"
583         select SDM_GCC_845
584         help
585           Support for the LPASS clock controller on SDM845 devices.
586           Say Y if you want to use the LPASS branch clocks of the LPASS clock
587           controller to reset the LPASS subsystem.
588
589 config SDX_GCC_55
590         tristate "SDX55 Global Clock Controller"
591         select QCOM_GDSC
592         help
593           Support for the global clock controller on SDX55 devices.
594           Say Y if you want to use peripheral devices such as UART,
595           SPI, I2C, USB, SD/UFS, PCIe etc.
596
597 config SDX_GCC_65
598         tristate "SDX65 Global Clock Controller"
599         select QCOM_GDSC
600         help
601           Support for the global clock controller on SDX65 devices.
602           Say Y if you want to use peripheral devices such as UART,
603           SPI, I2C, USB, SD/UFS, PCIe etc.
604
605 config SM_CAMCC_8250
606         tristate "SM8250 Camera Clock Controller"
607         select SM_GCC_8250
608         help
609           Support for the camera clock controller on SM8250 devices.
610           Say Y if you want to support camera devices and camera functionality.
611
612 config SM_CAMCC_8450
613         tristate "SM8450 Camera Clock Controller"
614         select SM_GCC_8450
615         help
616           Support for the camera clock controller on SM8450 devices.
617           Say Y if you want to support camera devices and camera functionality.
618
619 config SM_DISPCC_6125
620         tristate "SM6125 Display Clock Controller"
621         depends on SM_GCC_6125
622         help
623           Support for the display clock controller on Qualcomm Technologies, Inc
624           SM6125 devices.
625           Say Y if you want to support display devices and functionality such as
626           splash screen
627
628 config SM_DISPCC_8250
629         tristate "SM8150/SM8250/SM8350 Display Clock Controller"
630         depends on SM_GCC_8150 || SM_GCC_8250 || SM_GCC_8350
631         help
632           Support for the display clock controller on Qualcomm Technologies, Inc
633           SM8150/SM8250/SM8350 devices.
634           Say Y if you want to support display devices and functionality such as
635           splash screen.
636
637 config SM_DISPCC_6350
638         tristate "SM6350 Display Clock Controller"
639         depends on SM_GCC_6350
640         help
641           Support for the display clock controller on Qualcomm Technologies, Inc
642           SM6350 devices.
643           Say Y if you want to support display devices and functionality such as
644           splash screen.
645
646 config SM_GCC_6115
647         tristate "SM6115 and SM4250 Global Clock Controller"
648         help
649           Support for the global clock controller on SM6115 and SM4250 devices.
650           Say Y if you want to use peripheral devices such as UART, SPI,
651           i2C, USB, UFS, SDDC, PCIe, etc.
652
653 config SM_GCC_6125
654         tristate "SM6125 Global Clock Controller"
655         help
656           Support for the global clock controller on SM6125 devices.
657           Say Y if you want to use peripheral devices such as UART,
658           SPI, I2C, USB, SD/UFS, PCIe etc.
659
660 config SM_GCC_6350
661         tristate "SM6350 Global Clock Controller"
662         select QCOM_GDSC
663         help
664           Support for the global clock controller on SM6350 devices.
665           Say Y if you want to use peripheral devices such as UART,
666           SPI, I2C, USB, SD/UFS, PCIe etc.
667
668 config SM_GCC_8150
669         tristate "SM8150 Global Clock Controller"
670         help
671           Support for the global clock controller on SM8150 devices.
672           Say Y if you want to use peripheral devices such as UART,
673           SPI, I2C, USB, SD/UFS, PCIe etc.
674
675 config SM_GCC_8250
676         tristate "SM8250 Global Clock Controller"
677         select QCOM_GDSC
678         help
679           Support for the global clock controller on SM8250 devices.
680           Say Y if you want to use peripheral devices such as UART,
681           SPI, I2C, USB, SD/UFS, PCIe etc.
682
683 config SM_GCC_8350
684         tristate "SM8350 Global Clock Controller"
685         select QCOM_GDSC
686         help
687           Support for the global clock controller on SM8350 devices.
688           Say Y if you want to use peripheral devices such as UART,
689           SPI, I2C, USB, SD/UFS, PCIe etc.
690
691 config SM_GCC_8450
692         tristate "SM8450 Global Clock Controller"
693         select QCOM_GDSC
694         help
695           Support for the global clock controller on SM8450 devices.
696           Say Y if you want to use peripheral devices such as UART,
697           SPI, I2C, USB, SD/UFS, PCIe etc.
698
699 config SM_GPUCC_6350
700         tristate "SM6350 Graphics Clock Controller"
701         select SM_GCC_6350
702         help
703           Support for the graphics clock controller on SM6350 devices.
704           Say Y if you want to support graphics controller devices and
705           functionality such as 3D graphics.
706
707 config SM_GPUCC_8150
708         tristate "SM8150 Graphics Clock Controller"
709         select SM_GCC_8150
710         help
711           Support for the graphics clock controller on SM8150 devices.
712           Say Y if you want to support graphics controller devices and
713           functionality such as 3D graphics.
714
715 config SM_GPUCC_8250
716         tristate "SM8250 Graphics Clock Controller"
717         select SM_GCC_8250
718         help
719           Support for the graphics clock controller on SM8250 devices.
720           Say Y if you want to support graphics controller devices and
721           functionality such as 3D graphics.
722
723 config SM_GPUCC_8350
724         tristate "SM8350 Graphics Clock Controller"
725         select SM_GCC_8350
726         help
727           Support for the graphics clock controller on SM8350 devices.
728           Say Y if you want to support graphics controller devices and
729           functionality such as 3D graphics.
730
731 config SM_VIDEOCC_8150
732         tristate "SM8150 Video Clock Controller"
733         select SM_GCC_8150
734         select QCOM_GDSC
735         help
736           Support for the video clock controller on SM8150 devices.
737           Say Y if you want to support video devices and functionality such as
738           video encode and decode.
739
740 config SM_VIDEOCC_8250
741         tristate "SM8250 Video Clock Controller"
742         select SM_GCC_8250
743         select QCOM_GDSC
744         help
745           Support for the video clock controller on SM8250 devices.
746           Say Y if you want to support video devices and functionality such as
747           video encode and decode.
748
749 config SPMI_PMIC_CLKDIV
750         tristate "SPMI PMIC clkdiv Support"
751         depends on SPMI || COMPILE_TEST
752         help
753           This driver supports the clkdiv functionality on the Qualcomm
754           Technologies, Inc. SPMI PMIC. It configures the frequency of
755           clkdiv outputs of the PMIC. These clocks are typically wired
756           through alternate functions on GPIO pins.
757
758 config QCOM_HFPLL
759         tristate "High-Frequency PLL (HFPLL) Clock Controller"
760         help
761           Support for the high-frequency PLLs present on Qualcomm devices.
762           Say Y if you want to support CPU frequency scaling on devices
763           such as MSM8974, APQ8084, etc.
764
765 config KPSS_XCC
766         tristate "KPSS Clock Controller"
767         help
768           Support for the Krait ACC and GCC clock controllers. Say Y
769           if you want to support CPU frequency scaling on devices such
770           as MSM8960, APQ8064, etc.
771
772 config KRAITCC
773         tristate "Krait Clock Controller"
774         depends on ARM
775         select KRAIT_CLOCKS
776         help
777           Support for the Krait CPU clocks on Qualcomm devices.
778           Say Y if you want to support CPU frequency scaling.
779
780 config CLK_GFM_LPASS_SM8250
781         tristate "SM8250 GFM LPASS Clocks"
782         help
783           Support for the Glitch Free Mux (GFM) Low power audio
784           subsystem (LPASS) clocks found on SM8250 SoCs.
785
786 endif