blob: 9f6c278deead0b7437ca3bfd6c073bc948f7e3d5 [file] [log] [blame]
rjw1f884582022-01-06 17:20:42 +08001config QCOM_GDSC
2 bool
3 select PM_GENERIC_DOMAINS if PM
4
5config QCOM_RPMCC
6 bool
7
8config COMMON_CLK_QCOM
9 tristate "Support for Qualcomm's clock controllers"
10 depends on OF
11 depends on ARCH_QCOM || COMPILE_TEST
12 select REGMAP_MMIO
13 select RESET_CONTROLLER
14
15config QCOM_CLK_RPM
16 tristate "RPM based Clock Controller"
17 depends on COMMON_CLK_QCOM && MFD_QCOM_RPM
18 select QCOM_RPMCC
19 help
20 The RPM (Resource Power Manager) is a dedicated hardware engine for
21 managing the shared SoC resources in order to keep the lowest power
22 profile. It communicates with other hardware subsystems via shared
23 memory and accepts clock requests, aggregates the requests and turns
24 the clocks on/off or scales them on demand.
25 Say Y if you want to support the clocks exposed by the RPM on
26 platforms such as apq8064, msm8660, msm8960 etc.
27
28config QCOM_CLK_SMD_RPM
29 tristate "RPM over SMD based Clock Controller"
30 depends on COMMON_CLK_QCOM && QCOM_SMD_RPM
31 select QCOM_RPMCC
32 help
33 The RPM (Resource Power Manager) is a dedicated hardware engine for
34 managing the shared SoC resources in order to keep the lowest power
35 profile. It communicates with other hardware subsystems via shared
36 memory and accepts clock requests, aggregates the requests and turns
37 the clocks on/off or scales them on demand.
38 Say Y if you want to support the clocks exposed by the RPM on
39 platforms such as apq8016, apq8084, msm8974 etc.
40
41config APQ_GCC_8084
42 tristate "APQ8084 Global Clock Controller"
43 select QCOM_GDSC
44 depends on COMMON_CLK_QCOM
45 help
46 Support for the global clock controller on apq8084 devices.
47 Say Y if you want to use peripheral devices such as UART, SPI,
48 i2c, USB, SD/eMMC, SATA, PCIe, etc.
49
50config APQ_MMCC_8084
51 tristate "APQ8084 Multimedia Clock Controller"
52 select APQ_GCC_8084
53 select QCOM_GDSC
54 depends on COMMON_CLK_QCOM
55 help
56 Support for the multimedia clock controller on apq8084 devices.
57 Say Y if you want to support multimedia devices such as display,
58 graphics, video encode/decode, camera, etc.
59
60config IPQ_GCC_4019
61 tristate "IPQ4019 Global Clock Controller"
62 depends on COMMON_CLK_QCOM
63 help
64 Support for the global clock controller on ipq4019 devices.
65 Say Y if you want to use peripheral devices such as UART, SPI,
66 i2c, USB, SD/eMMC, etc.
67
68config IPQ_GCC_806X
69 tristate "IPQ806x Global Clock Controller"
70 depends on COMMON_CLK_QCOM
71 help
72 Support for the global clock controller on ipq806x devices.
73 Say Y if you want to use peripheral devices such as UART, SPI,
74 i2c, USB, SD/eMMC, etc.
75
76config IPQ_LCC_806X
77 tristate "IPQ806x LPASS Clock Controller"
78 select IPQ_GCC_806X
79 depends on COMMON_CLK_QCOM
80 help
81 Support for the LPASS clock controller on ipq806x devices.
82 Say Y if you want to use audio devices such as i2s, pcm,
83 S/PDIF, etc.
84
85config IPQ_GCC_8074
86 tristate "IPQ8074 Global Clock Controller"
87 depends on COMMON_CLK_QCOM
88 help
89 Support for global clock controller on ipq8074 devices.
90 Say Y if you want to use peripheral devices such as UART, SPI,
91 i2c, USB, SD/eMMC, etc. Select this for the root clock
92 of ipq8074.
93
94config MSM_GCC_8660
95 tristate "MSM8660 Global Clock Controller"
96 depends on COMMON_CLK_QCOM
97 help
98 Support for the global clock controller on msm8660 devices.
99 Say Y if you want to use peripheral devices such as UART, SPI,
100 i2c, USB, SD/eMMC, etc.
101
102config MSM_GCC_8916
103 tristate "MSM8916 Global Clock Controller"
104 select QCOM_GDSC
105 depends on COMMON_CLK_QCOM
106 help
107 Support for the global clock controller on msm8916 devices.
108 Say Y if you want to use devices such as UART, SPI i2c, USB,
109 SD/eMMC, display, graphics, camera etc.
110
111config MSM_GCC_8960
112 tristate "APQ8064/MSM8960 Global Clock Controller"
113 depends on COMMON_CLK_QCOM
114 help
115 Support for the global clock controller on apq8064/msm8960 devices.
116 Say Y if you want to use peripheral devices such as UART, SPI,
117 i2c, USB, SD/eMMC, SATA, PCIe, etc.
118
119config MSM_LCC_8960
120 tristate "APQ8064/MSM8960 LPASS Clock Controller"
121 select MSM_GCC_8960
122 depends on COMMON_CLK_QCOM
123 help
124 Support for the LPASS clock controller on apq8064/msm8960 devices.
125 Say Y if you want to use audio devices such as i2s, pcm,
126 SLIMBus, etc.
127
128config MDM_GCC_9615
129 tristate "MDM9615 Global Clock Controller"
130 depends on COMMON_CLK_QCOM
131 help
132 Support for the global clock controller on mdm9615 devices.
133 Say Y if you want to use peripheral devices such as UART, SPI,
134 i2c, USB, SD/eMMC, etc.
135
136config MDM_LCC_9615
137 tristate "MDM9615 LPASS Clock Controller"
138 select MDM_GCC_9615
139 depends on COMMON_CLK_QCOM
140 help
141 Support for the LPASS clock controller on mdm9615 devices.
142 Say Y if you want to use audio devices such as i2s, pcm,
143 SLIMBus, etc.
144
145config MSM_MMCC_8960
146 tristate "MSM8960 Multimedia Clock Controller"
147 select MSM_GCC_8960
148 depends on COMMON_CLK_QCOM
149 help
150 Support for the multimedia clock controller on msm8960 devices.
151 Say Y if you want to support multimedia devices such as display,
152 graphics, video encode/decode, camera, etc.
153
154config MSM_GCC_8974
155 tristate "MSM8974 Global Clock Controller"
156 select QCOM_GDSC
157 depends on COMMON_CLK_QCOM
158 help
159 Support for the global clock controller on msm8974 devices.
160 Say Y if you want to use peripheral devices such as UART, SPI,
161 i2c, USB, SD/eMMC, SATA, PCIe, etc.
162
163config MSM_MMCC_8974
164 tristate "MSM8974 Multimedia Clock Controller"
165 select MSM_GCC_8974
166 select QCOM_GDSC
167 depends on COMMON_CLK_QCOM
168 help
169 Support for the multimedia clock controller on msm8974 devices.
170 Say Y if you want to support multimedia devices such as display,
171 graphics, video encode/decode, camera, etc.
172
173config MSM_GCC_8994
174 tristate "MSM8994 Global Clock Controller"
175 depends on COMMON_CLK_QCOM
176 help
177 Support for the global clock controller on msm8994 devices.
178 Say Y if you want to use peripheral devices such as UART, SPI,
179 i2c, USB, UFS, SD/eMMC, PCIe, etc.
180
181config MSM_GCC_8996
182 tristate "MSM8996 Global Clock Controller"
183 select QCOM_GDSC
184 depends on COMMON_CLK_QCOM
185 help
186 Support for the global clock controller on msm8996 devices.
187 Say Y if you want to use peripheral devices such as UART, SPI,
188 i2c, USB, UFS, SD/eMMC, PCIe, etc.
189
190config MSM_MMCC_8996
191 tristate "MSM8996 Multimedia Clock Controller"
192 select MSM_GCC_8996
193 select QCOM_GDSC
194 depends on COMMON_CLK_QCOM
195 help
196 Support for the multimedia clock controller on msm8996 devices.
197 Say Y if you want to support multimedia devices such as display,
198 graphics, video encode/decode, camera, etc.