GNU Linux-libre 6.1.24-gnu
[releases.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_8909
184         tristate "MSM8909 Global Clock Controller"
185         select QCOM_GDSC
186         help
187           Support for the global clock controller on msm8909 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_8916
192         tristate "MSM8916 Global Clock Controller"
193         select QCOM_GDSC
194         help
195           Support for the global clock controller on msm8916 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_8939
200         tristate "MSM8939 Global Clock Controller"
201         select QCOM_GDSC
202         help
203           Support for the global clock controller on msm8939 devices.
204           Say Y if you want to use devices such as UART, SPI i2c, USB,
205           SD/eMMC, display, graphics, camera etc.
206
207 config MSM_GCC_8960
208         tristate "APQ8064/MSM8960 Global Clock Controller"
209         help
210           Support for the global clock controller on apq8064/msm8960 devices.
211           Say Y if you want to use peripheral devices such as UART, SPI,
212           i2c, USB, SD/eMMC, SATA, PCIe, etc.
213
214 config MSM_LCC_8960
215         tristate "APQ8064/MSM8960 LPASS Clock Controller"
216         select MSM_GCC_8960
217         help
218           Support for the LPASS clock controller on apq8064/msm8960 devices.
219           Say Y if you want to use audio devices such as i2s, pcm,
220           SLIMBus, etc.
221
222 config MDM_GCC_9607
223         tristate "MDM9607 Global Clock Controller"
224         help
225           Support for the global clock controller on mdm9607 devices.
226           Say Y if you want to use peripheral devices such as UART, SPI,
227           I2C, USB, SD/eMMC, etc.
228
229 config MDM_GCC_9615
230         tristate "MDM9615 Global Clock Controller"
231         help
232           Support for the global clock controller on mdm9615 devices.
233           Say Y if you want to use peripheral devices such as UART, SPI,
234           i2c, USB, SD/eMMC, etc.
235
236 config MDM_LCC_9615
237         tristate "MDM9615 LPASS Clock Controller"
238         select MDM_GCC_9615
239         help
240           Support for the LPASS clock controller on mdm9615 devices.
241           Say Y if you want to use audio devices such as i2s, pcm,
242           SLIMBus, etc.
243
244 config MSM_MMCC_8960
245         tristate "MSM8960 Multimedia Clock Controller"
246         select MSM_GCC_8960
247         help
248           Support for the multimedia clock controller on msm8960 devices.
249           Say Y if you want to support multimedia devices such as display,
250           graphics, video encode/decode, camera, etc.
251
252 config MSM_GCC_8953
253         tristate "MSM8953 Global Clock Controller"
254         select QCOM_GDSC
255         help
256           Support for the global clock controller on msm8953 devices.
257           Say Y if you want to use devices such as UART, SPI i2c, USB,
258           SD/eMMC, display, graphics, camera etc.
259
260 config MSM_GCC_8974
261         tristate "MSM8974 Global Clock Controller"
262         select QCOM_GDSC
263         help
264           Support for the global clock controller on msm8974 devices.
265           Say Y if you want to use peripheral devices such as UART, SPI,
266           i2c, USB, SD/eMMC, SATA, PCIe, etc.
267
268 config MSM_MMCC_8974
269         tristate "MSM8974 Multimedia Clock Controller"
270         select MSM_GCC_8974
271         select QCOM_GDSC
272         help
273           Support for the multimedia clock controller on msm8974 devices.
274           Say Y if you want to support multimedia devices such as display,
275           graphics, video encode/decode, camera, etc.
276
277 config MSM_GCC_8976
278         tristate "MSM8956/76 Global Clock Controller"
279         select QCOM_GDSC
280         help
281           Support for the global clock controller on msm8956/76 devices.
282           Say Y if you want to use peripheral devices such as UART, SPI,
283           i2c, USB, SD/eMMC, SATA, PCIe, etc.
284
285 config MSM_MMCC_8994
286         tristate "MSM8994 Multimedia Clock Controller"
287         select MSM_GCC_8994
288         select QCOM_GDSC
289         help
290           Support for the multimedia clock controller on msm8994 devices.
291           Say Y if you want to support multimedia devices such as display,
292           graphics, video encode/decode, camera, etc.
293
294 config MSM_GCC_8994
295         tristate "MSM8994 Global Clock Controller"
296         help
297           Support for the global clock controller on msm8994 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_GCC_8996
302         tristate "MSM8996 Global Clock Controller"
303         select QCOM_GDSC
304         help
305           Support for the global clock controller on msm8996 devices.
306           Say Y if you want to use peripheral devices such as UART, SPI,
307           i2c, USB, UFS, SD/eMMC, PCIe, etc.
308
309 config MSM_MMCC_8996
310         tristate "MSM8996 Multimedia Clock Controller"
311         select MSM_GCC_8996
312         select QCOM_GDSC
313         help
314           Support for the multimedia clock controller on msm8996 devices.
315           Say Y if you want to support multimedia devices such as display,
316           graphics, video encode/decode, camera, etc.
317
318 config MSM_GCC_8998
319         tristate "MSM8998 Global Clock Controller"
320         select QCOM_GDSC
321         help
322           Support for the global clock controller on msm8998 devices.
323           Say Y if you want to use peripheral devices such as UART, SPI,
324           i2c, USB, UFS, SD/eMMC, PCIe, etc.
325
326 config MSM_GPUCC_8998
327         tristate "MSM8998 Graphics Clock Controller"
328         select MSM_GCC_8998
329         select QCOM_GDSC
330         help
331           Support for the graphics clock controller on MSM8998 devices.
332           Say Y if you want to support graphics controller devices and
333           functionality such as 3D graphics.
334
335 config MSM_MMCC_8998
336         tristate "MSM8998 Multimedia Clock Controller"
337         select MSM_GCC_8998
338         select QCOM_GDSC
339         help
340           Support for the multimedia clock controller on msm8998 devices.
341           Say Y if you want to support multimedia devices such as display,
342           graphics, video encode/decode, camera, etc.
343
344 config QCM_GCC_2290
345         tristate "QCM2290 Global Clock Controller"
346         select QCOM_GDSC
347         help
348           Support for the global clock controller on QCM2290 devices.
349           Say Y if you want to use multimedia devices or peripheral
350           devices such as UART, SPI, I2C, USB, SD/eMMC etc.
351
352 config QCM_DISPCC_2290
353         tristate "QCM2290 Display Clock Controller"
354         select QCM_GCC_2290
355         help
356           Support for the display clock controller on Qualcomm Technologies, Inc
357           QCM2290 devices.
358           Say Y if you want to support display devices and functionality such as
359           splash screen.
360
361 config QCS_GCC_404
362         tristate "QCS404 Global Clock Controller"
363         help
364           Support for the global clock controller on QCS404 devices.
365           Say Y if you want to use multimedia devices or peripheral
366           devices such as UART, SPI, I2C, USB, SD/eMMC, PCIe etc.
367
368 config SC_CAMCC_7180
369         tristate "SC7180 Camera Clock Controller"
370         select SC_GCC_7180
371         help
372           Support for the camera clock controller on Qualcomm Technologies, Inc
373           SC7180 devices.
374           Say Y if you want to support camera devices and functionality such as
375           capturing pictures.
376
377 config SC_CAMCC_7280
378         tristate "SC7280 Camera Clock Controller"
379         select SC_GCC_7280
380         help
381           Support for the camera clock controller on Qualcomm Technologies, Inc
382           SC7280 devices.
383           Say Y if you want to support camera devices and functionality such as
384           capturing pictures.
385
386 config SC_DISPCC_7180
387         tristate "SC7180 Display Clock Controller"
388         select SC_GCC_7180
389         help
390           Support for the display clock controller on Qualcomm Technologies, Inc
391           SC7180 devices.
392           Say Y if you want to support display devices and functionality such as
393           splash screen.
394
395 config SC_DISPCC_7280
396         tristate "SC7280 Display Clock Controller"
397         select SC_GCC_7280
398         help
399           Support for the display clock controller on Qualcomm Technologies, Inc.
400           SC7280 devices.
401           Say Y if you want to support display devices and functionality such as
402           splash screen.
403
404 config SC_GCC_7180
405         tristate "SC7180 Global Clock Controller"
406         select QCOM_GDSC
407         depends on COMMON_CLK_QCOM
408         help
409           Support for the global clock controller on SC7180 devices.
410           Say Y if you want to use peripheral devices such as UART, SPI,
411           I2C, USB, UFS, SDCC, etc.
412
413 config SC_GCC_7280
414         tristate "SC7280 Global Clock Controller"
415         select QCOM_GDSC
416         depends on COMMON_CLK_QCOM
417         help
418           Support for the global clock controller on SC7280 devices.
419           Say Y if you want to use peripheral devices such as UART, SPI,
420           I2C, USB, UFS, SDCC, PCIe etc.
421
422 config SC_GCC_8180X
423         tristate "SC8180X Global Clock Controller"
424         select QCOM_GDSC
425         depends on COMMON_CLK_QCOM
426         help
427           Support for the global clock controller on SC8180X devices.
428           Say Y if you want to use peripheral devices such as UART, SPI,
429           I2C, USB, UFS, SDCC, etc.
430
431 config SC_GCC_8280XP
432         tristate "SC8280XP Global Clock Controller"
433         select QCOM_GDSC
434         depends on COMMON_CLK_QCOM
435         help
436           Support for the global clock controller on SC8280XP devices.
437           Say Y if you want to use peripheral devices such as UART, SPI,
438           I2C, USB, UFS, SDCC, etc.
439
440 config SC_GPUCC_7180
441         tristate "SC7180 Graphics Clock Controller"
442         select SC_GCC_7180
443         help
444           Support for the graphics clock controller on SC7180 devices.
445           Say Y if you want to support graphics controller devices and
446           functionality such as 3D graphics.
447
448 config SC_GPUCC_7280
449         tristate "SC7280 Graphics Clock Controller"
450         select SC_GCC_7280
451         help
452           Support for the graphics clock controller on SC7280 devices.
453           Say Y if you want to support graphics controller devices and
454           functionality such as 3D graphics.
455
456 config SC_GPUCC_8280XP
457         tristate "SC8280XP Graphics Clock Controller"
458         select SC_GCC_8280XP
459         help
460           Support for the graphics clock controller on SC8280XP devices.
461           Say Y if you want to support graphics controller devices and
462           functionality such as 3D graphics.
463
464 config SC_LPASSCC_7280
465         tristate "SC7280 Low Power Audio Subsystem (LPASS) Clock Controller"
466         select SC_GCC_7280
467         help
468           Support for the LPASS clock controller on SC7280 devices.
469           Say Y if you want to use the LPASS branch clocks of the LPASS clock
470           controller to reset the LPASS subsystem.
471
472 config SC_LPASS_CORECC_7180
473         tristate "SC7180 LPASS Core Clock Controller"
474         select SC_GCC_7180
475         help
476           Support for the LPASS(Low Power Audio Subsystem) core clock controller
477           on SC7180 devices.
478           Say Y if you want to use LPASS clocks and power domains of the LPASS
479           core clock controller.
480
481 config SC_LPASS_CORECC_7280
482         tristate "SC7280 LPASS Core & Audio Clock Controller"
483         select SC_GCC_7280
484         select QCOM_GDSC
485         help
486           Support for the LPASS(Low Power Audio Subsystem) core and audio clock
487           controller on SC7280 devices.
488           Say Y if you want to use LPASS clocks and power domains of the LPASS
489           core clock controller.
490
491 config SC_MSS_7180
492         tristate "SC7180 Modem Clock Controller"
493         select SC_GCC_7180
494         help
495           Support for the Modem Subsystem clock controller on Qualcomm
496           Technologies, Inc on SC7180 devices.
497           Say Y if you want to use the Modem branch clocks of the Modem
498           subsystem clock controller to reset the MSS subsystem.
499
500 config SC_VIDEOCC_7180
501         tristate "SC7180 Video Clock Controller"
502         select SC_GCC_7180
503         help
504           Support for the video clock controller on SC7180 devices.
505           Say Y if you want to support video devices and functionality such as
506           video encode and decode.
507
508 config SC_VIDEOCC_7280
509         tristate "SC7280 Video Clock Controller"
510         select SC_GCC_7280
511         help
512           Support for the video clock controller on SC7280 devices.
513           Say Y if you want to support video devices and functionality such as
514           video encode and decode.
515
516 config SDM_CAMCC_845
517         tristate "SDM845 Camera Clock Controller"
518         select SDM_GCC_845
519         help
520           Support for the camera clock controller on SDM845 devices.
521           Say Y if you want to support camera devices and camera functionality.
522
523 config SDM_GCC_660
524         tristate "SDM660 Global Clock Controller"
525         select QCOM_GDSC
526         help
527           Support for the global clock controller on SDM660 devices.
528           Say Y if you want to use peripheral devices such as UART, SPI,
529           i2C, USB, UFS, SDDC, PCIe, etc.
530
531 config SDM_MMCC_660
532         tristate "SDM660 Multimedia Clock Controller"
533         select SDM_GCC_660
534         select QCOM_GDSC
535         help
536           Support for the multimedia clock controller on SDM660 devices.
537           Say Y if you want to support multimedia devices such as display,
538           graphics, video encode/decode, camera, etc.
539
540 config SDM_GPUCC_660
541         tristate "SDM660 Graphics Clock Controller"
542         select SDM_GCC_660
543         select QCOM_GDSC
544         help
545           Support for the graphics clock controller on SDM630/636/660 devices.
546           Say Y if you want to support graphics controller devices and
547           functionality such as 3D graphics
548
549 config QCS_TURING_404
550         tristate "QCS404 Turing Clock Controller"
551         help
552           Support for the Turing Clock Controller on QCS404, provides clocks
553           and resets for the Turing subsystem.
554
555 config QCS_Q6SSTOP_404
556         tristate "QCS404 Q6SSTOP Clock Controller"
557         select QCS_GCC_404
558         help
559           Support for the Q6SSTOP clock controller on QCS404 devices.
560           Say Y if you want to use the Q6SSTOP branch clocks of the WCSS clock
561           controller to reset the Q6SSTOP subsystem.
562
563 config SDM_GCC_845
564         tristate "SDM845/SDM670 Global Clock Controller"
565         select QCOM_GDSC
566         help
567           Support for the global clock controller on SDM845 and SDM670 devices.
568           Say Y if you want to use peripheral devices such as UART, SPI,
569           i2C, USB, UFS, SDDC, PCIe, etc.
570
571 config SDM_GPUCC_845
572         tristate "SDM845 Graphics Clock Controller"
573         select SDM_GCC_845
574         help
575           Support for the graphics clock controller on SDM845 devices.
576           Say Y if you want to support graphics controller devices and
577           functionality such as 3D graphics.
578
579 config SDM_VIDEOCC_845
580         tristate "SDM845 Video Clock Controller"
581         select SDM_GCC_845
582         select QCOM_GDSC
583         help
584           Support for the video clock controller on SDM845 devices.
585           Say Y if you want to support video devices and functionality such as
586           video encode and decode.
587
588 config SDM_DISPCC_845
589         tristate "SDM845 Display Clock Controller"
590         select SDM_GCC_845
591         help
592           Support for the display clock controller on Qualcomm Technologies, Inc
593           SDM845 devices.
594           Say Y if you want to support display devices and functionality such as
595           splash screen.
596
597 config SDM_LPASSCC_845
598         tristate "SDM845 Low Power Audio Subsystem (LPAAS) Clock Controller"
599         select SDM_GCC_845
600         help
601           Support for the LPASS clock controller on SDM845 devices.
602           Say Y if you want to use the LPASS branch clocks of the LPASS clock
603           controller to reset the LPASS subsystem.
604
605 config SDX_GCC_55
606         tristate "SDX55 Global Clock Controller"
607         select QCOM_GDSC
608         help
609           Support for the global clock controller on SDX55 devices.
610           Say Y if you want to use peripheral devices such as UART,
611           SPI, I2C, USB, SD/UFS, PCIe etc.
612
613 config SDX_GCC_65
614         tristate "SDX65 Global Clock Controller"
615         select QCOM_GDSC
616         help
617           Support for the global clock controller on SDX65 devices.
618           Say Y if you want to use peripheral devices such as UART,
619           SPI, I2C, USB, SD/UFS, PCIe etc.
620
621 config SM_CAMCC_8250
622         tristate "SM8250 Camera Clock Controller"
623         select SM_GCC_8250
624         help
625           Support for the camera clock controller on SM8250 devices.
626           Say Y if you want to support camera devices and camera functionality.
627
628 config SM_CAMCC_8450
629         tristate "SM8450 Camera Clock Controller"
630         select SM_GCC_8450
631         help
632           Support for the camera clock controller on SM8450 devices.
633           Say Y if you want to support camera devices and camera functionality.
634
635 config SM_DISPCC_6115
636         tristate "SM6115 Display Clock Controller"
637         depends on SM_GCC_6115
638         help
639           Support for the display clock controller on Qualcomm Technologies, Inc
640           SM6115/SM4250 devices.
641           Say Y if you want to support display devices and functionality such as
642           splash screen
643
644 config SM_DISPCC_6125
645         tristate "SM6125 Display Clock Controller"
646         depends on SM_GCC_6125
647         help
648           Support for the display clock controller on Qualcomm Technologies, Inc
649           SM6125 devices.
650           Say Y if you want to support display devices and functionality such as
651           splash screen
652
653 config SM_DISPCC_8250
654         tristate "SM8150/SM8250/SM8350 Display Clock Controller"
655         depends on SM_GCC_8150 || SM_GCC_8250 || SM_GCC_8350
656         help
657           Support for the display clock controller on Qualcomm Technologies, Inc
658           SM8150/SM8250/SM8350 devices.
659           Say Y if you want to support display devices and functionality such as
660           splash screen.
661
662 config SM_DISPCC_6350
663         tristate "SM6350 Display Clock Controller"
664         depends on SM_GCC_6350
665         help
666           Support for the display clock controller on Qualcomm Technologies, Inc
667           SM6350 devices.
668           Say Y if you want to support display devices and functionality such as
669           splash screen.
670
671 config SM_DISPCC_8450
672         tristate "SM8450 Display Clock Controller"
673         depends on SM_GCC_8450
674         help
675           Support for the display clock controller on Qualcomm Technologies, Inc
676           SM8450 devices.
677           Say Y if you want to support display devices and functionality such as
678           splash screen.
679
680 config SM_GCC_6115
681         tristate "SM6115 and SM4250 Global Clock Controller"
682         select QCOM_GDSC
683         help
684           Support for the global clock controller on SM6115 and SM4250 devices.
685           Say Y if you want to use peripheral devices such as UART, SPI,
686           i2C, USB, UFS, SDDC, PCIe, etc.
687
688 config SM_GCC_6125
689         tristate "SM6125 Global Clock Controller"
690         help
691           Support for the global clock controller on SM6125 devices.
692           Say Y if you want to use peripheral devices such as UART,
693           SPI, I2C, USB, SD/UFS, PCIe etc.
694
695 config SM_GCC_6350
696         tristate "SM6350 Global Clock Controller"
697         select QCOM_GDSC
698         help
699           Support for the global clock controller on SM6350 devices.
700           Say Y if you want to use peripheral devices such as UART,
701           SPI, I2C, USB, SD/UFS, PCIe etc.
702
703 config SM_GCC_6375
704         tristate "SM6375 Global Clock Controller"
705         select QCOM_GDSC
706         help
707           Support for the global clock controller on SM6375 devices.
708           Say Y if you want to use peripheral devices such as UART,
709           SPI, I2C, USB, SD/UFS etc.
710
711 config SM_GCC_8150
712         tristate "SM8150 Global Clock Controller"
713         help
714           Support for the global clock controller on SM8150 devices.
715           Say Y if you want to use peripheral devices such as UART,
716           SPI, I2C, USB, SD/UFS, PCIe etc.
717
718 config SM_GCC_8250
719         tristate "SM8250 Global Clock Controller"
720         select QCOM_GDSC
721         help
722           Support for the global clock controller on SM8250 devices.
723           Say Y if you want to use peripheral devices such as UART,
724           SPI, I2C, USB, SD/UFS, PCIe etc.
725
726 config SM_GCC_8350
727         tristate "SM8350 Global Clock Controller"
728         select QCOM_GDSC
729         help
730           Support for the global clock controller on SM8350 devices.
731           Say Y if you want to use peripheral devices such as UART,
732           SPI, I2C, USB, SD/UFS, PCIe etc.
733
734 config SM_GCC_8450
735         tristate "SM8450 Global Clock Controller"
736         select QCOM_GDSC
737         help
738           Support for the global clock controller on SM8450 devices.
739           Say Y if you want to use peripheral devices such as UART,
740           SPI, I2C, USB, SD/UFS, PCIe etc.
741
742 config SM_GPUCC_6350
743         tristate "SM6350 Graphics Clock Controller"
744         select SM_GCC_6350
745         help
746           Support for the graphics clock controller on SM6350 devices.
747           Say Y if you want to support graphics controller devices and
748           functionality such as 3D graphics.
749
750 config SM_GPUCC_8150
751         tristate "SM8150 Graphics Clock Controller"
752         select SM_GCC_8150
753         help
754           Support for the graphics clock controller on SM8150 devices.
755           Say Y if you want to support graphics controller devices and
756           functionality such as 3D graphics.
757
758 config SM_GPUCC_8250
759         tristate "SM8250 Graphics Clock Controller"
760         select SM_GCC_8250
761         help
762           Support for the graphics clock controller on SM8250 devices.
763           Say Y if you want to support graphics controller devices and
764           functionality such as 3D graphics.
765
766 config SM_GPUCC_8350
767         tristate "SM8350 Graphics Clock Controller"
768         select SM_GCC_8350
769         help
770           Support for the graphics clock controller on SM8350 devices.
771           Say Y if you want to support graphics controller devices and
772           functionality such as 3D graphics.
773
774 config SM_VIDEOCC_8150
775         tristate "SM8150 Video Clock Controller"
776         select SM_GCC_8150
777         select QCOM_GDSC
778         help
779           Support for the video clock controller on SM8150 devices.
780           Say Y if you want to support video devices and functionality such as
781           video encode and decode.
782
783 config SM_VIDEOCC_8250
784         tristate "SM8250 Video Clock Controller"
785         select SM_GCC_8250
786         select QCOM_GDSC
787         help
788           Support for the video clock controller on SM8250 devices.
789           Say Y if you want to support video devices and functionality such as
790           video encode and decode.
791
792 config SPMI_PMIC_CLKDIV
793         tristate "SPMI PMIC clkdiv Support"
794         depends on SPMI || COMPILE_TEST
795         help
796           This driver supports the clkdiv functionality on the Qualcomm
797           Technologies, Inc. SPMI PMIC. It configures the frequency of
798           clkdiv outputs of the PMIC. These clocks are typically wired
799           through alternate functions on GPIO pins.
800
801 config QCOM_HFPLL
802         tristate "High-Frequency PLL (HFPLL) Clock Controller"
803         help
804           Support for the high-frequency PLLs present on Qualcomm devices.
805           Say Y if you want to support CPU frequency scaling on devices
806           such as MSM8974, APQ8084, etc.
807
808 config KPSS_XCC
809         tristate "KPSS Clock Controller"
810         help
811           Support for the Krait ACC and GCC clock controllers. Say Y
812           if you want to support CPU frequency scaling on devices such
813           as MSM8960, APQ8064, etc.
814
815 config KRAITCC
816         tristate "Krait Clock Controller"
817         depends on ARM
818         select KRAIT_CLOCKS
819         help
820           Support for the Krait CPU clocks on Qualcomm devices.
821           Say Y if you want to support CPU frequency scaling.
822
823 config CLK_GFM_LPASS_SM8250
824         tristate "SM8250 GFM LPASS Clocks"
825         help
826           Support for the Glitch Free Mux (GFM) Low power audio
827           subsystem (LPASS) clocks found on SM8250 SoCs.
828
829 endif