xref: /openbmc/linux/drivers/clk/qcom/Kconfig (revision 371a9507)
173bb7dc0SStephen Boydconfig QCOM_GDSC
273bb7dc0SStephen Boyd	bool
373bb7dc0SStephen Boyd	select PM_GENERIC_DOMAINS if PM
473bb7dc0SStephen Boyd
500f64b58SGeorgi Djakovconfig QCOM_RPMCC
600f64b58SGeorgi Djakov	bool
700f64b58SGeorgi Djakov
8085d7a45SStephen Boydconfig COMMON_CLK_QCOM
9085d7a45SStephen Boyd	tristate "Support for Qualcomm's clock controllers"
10085d7a45SStephen Boyd	depends on OF
113937567dSBartlomiej Zolnierkiewicz	depends on ARCH_QCOM || COMPILE_TEST
12085d7a45SStephen Boyd	select REGMAP_MMIO
13b36ba30cSStephen Boyd	select RESET_CONTROLLER
142ec94130SStephen Boyd
15872f91b5SGeorgi Djakovconfig QCOM_CLK_RPM
16872f91b5SGeorgi Djakov	tristate "RPM based Clock Controller"
17872f91b5SGeorgi Djakov	depends on COMMON_CLK_QCOM && MFD_QCOM_RPM
18872f91b5SGeorgi Djakov	select QCOM_RPMCC
19872f91b5SGeorgi Djakov	help
20872f91b5SGeorgi Djakov	  The RPM (Resource Power Manager) is a dedicated hardware engine for
21872f91b5SGeorgi Djakov	  managing the shared SoC resources in order to keep the lowest power
22872f91b5SGeorgi Djakov	  profile. It communicates with other hardware subsystems via shared
23872f91b5SGeorgi Djakov	  memory and accepts clock requests, aggregates the requests and turns
24872f91b5SGeorgi Djakov	  the clocks on/off or scales them on demand.
25872f91b5SGeorgi Djakov	  Say Y if you want to support the clocks exposed by the RPM on
26872f91b5SGeorgi Djakov	  platforms such as apq8064, msm8660, msm8960 etc.
27872f91b5SGeorgi Djakov
2800f64b58SGeorgi Djakovconfig QCOM_CLK_SMD_RPM
2900f64b58SGeorgi Djakov	tristate "RPM over SMD based Clock Controller"
3000f64b58SGeorgi Djakov	depends on COMMON_CLK_QCOM && QCOM_SMD_RPM
3100f64b58SGeorgi Djakov	select QCOM_RPMCC
3200f64b58SGeorgi Djakov	help
3300f64b58SGeorgi Djakov	  The RPM (Resource Power Manager) is a dedicated hardware engine for
3400f64b58SGeorgi Djakov	  managing the shared SoC resources in order to keep the lowest power
3500f64b58SGeorgi Djakov	  profile. It communicates with other hardware subsystems via shared
3600f64b58SGeorgi Djakov	  memory and accepts clock requests, aggregates the requests and turns
3700f64b58SGeorgi Djakov	  the clocks on/off or scales them on demand.
3800f64b58SGeorgi Djakov	  Say Y if you want to support the clocks exposed by the RPM on
3900f64b58SGeorgi Djakov	  platforms such as apq8016, apq8084, msm8974 etc.
4000f64b58SGeorgi Djakov
4102824653SGeorgi Djakovconfig APQ_GCC_8084
4202824653SGeorgi Djakov	tristate "APQ8084 Global Clock Controller"
43639af949SRajendra Nayak	select QCOM_GDSC
4402824653SGeorgi Djakov	depends on COMMON_CLK_QCOM
4502824653SGeorgi Djakov	help
4602824653SGeorgi Djakov	  Support for the global clock controller on apq8084 devices.
4702824653SGeorgi Djakov	  Say Y if you want to use peripheral devices such as UART, SPI,
4802824653SGeorgi Djakov	  i2c, USB, SD/eMMC, SATA, PCIe, etc.
4902824653SGeorgi Djakov
502b46cd23SGeorgi Djakovconfig APQ_MMCC_8084
512b46cd23SGeorgi Djakov	tristate "APQ8084 Multimedia Clock Controller"
522b46cd23SGeorgi Djakov	select APQ_GCC_8084
53cb2eb7deSStephane Viau	select QCOM_GDSC
542b46cd23SGeorgi Djakov	depends on COMMON_CLK_QCOM
552b46cd23SGeorgi Djakov	help
562b46cd23SGeorgi Djakov	  Support for the multimedia clock controller on apq8084 devices.
572b46cd23SGeorgi Djakov	  Say Y if you want to support multimedia devices such as display,
582b46cd23SGeorgi Djakov	  graphics, video encode/decode, camera, etc.
592b46cd23SGeorgi Djakov
606971e863SVaradarajan Narayananconfig IPQ_GCC_4019
616971e863SVaradarajan Narayanan	tristate "IPQ4019 Global Clock Controller"
626971e863SVaradarajan Narayanan	depends on COMMON_CLK_QCOM
636971e863SVaradarajan Narayanan	help
646971e863SVaradarajan Narayanan	  Support for the global clock controller on ipq4019 devices.
656971e863SVaradarajan Narayanan	  Say Y if you want to use peripheral devices such as UART, SPI,
666971e863SVaradarajan Narayanan	  i2c, USB, SD/eMMC, etc.
676971e863SVaradarajan Narayanan
6824d8fba4SKumar Galaconfig IPQ_GCC_806X
6924d8fba4SKumar Gala	tristate "IPQ806x Global Clock Controller"
7024d8fba4SKumar Gala	depends on COMMON_CLK_QCOM
7124d8fba4SKumar Gala	help
7224d8fba4SKumar Gala	  Support for the global clock controller on ipq806x devices.
7324d8fba4SKumar Gala	  Say Y if you want to use peripheral devices such as UART, SPI,
7424d8fba4SKumar Gala	  i2c, USB, SD/eMMC, etc.
7524d8fba4SKumar Gala
76c99e515aSRajendra Nayakconfig IPQ_LCC_806X
77c99e515aSRajendra Nayak	tristate "IPQ806x LPASS Clock Controller"
78c99e515aSRajendra Nayak	select IPQ_GCC_806X
79c99e515aSRajendra Nayak	depends on COMMON_CLK_QCOM
80c99e515aSRajendra Nayak	help
81c99e515aSRajendra Nayak	  Support for the LPASS clock controller on ipq806x devices.
82c99e515aSRajendra Nayak	  Say Y if you want to use audio devices such as i2s, pcm,
83c99e515aSRajendra Nayak	  S/PDIF, etc.
84c99e515aSRajendra Nayak
85*371a9507SAbhishek Sahuconfig IPQ_GCC_8074
86*371a9507SAbhishek Sahu	tristate "IPQ8074 Global Clock Controller"
87*371a9507SAbhishek Sahu	depends on COMMON_CLK_QCOM
88*371a9507SAbhishek Sahu	help
89*371a9507SAbhishek Sahu	  Support for global clock controller on ipq8074 devices.
90*371a9507SAbhishek Sahu	  Say Y if you want to use peripheral devices such as UART, SPI,
91*371a9507SAbhishek Sahu	  i2c, USB, SD/eMMC, etc. Select this for the root clock
92*371a9507SAbhishek Sahu	  of ipq8074.
93*371a9507SAbhishek Sahu
940eeff27bSStephen Boydconfig MSM_GCC_8660
950eeff27bSStephen Boyd	tristate "MSM8660 Global Clock Controller"
960eeff27bSStephen Boyd	depends on COMMON_CLK_QCOM
970eeff27bSStephen Boyd	help
980eeff27bSStephen Boyd	  Support for the global clock controller on msm8660 devices.
990eeff27bSStephen Boyd	  Say Y if you want to use peripheral devices such as UART, SPI,
1000eeff27bSStephen Boyd	  i2c, USB, SD/eMMC, etc.
1010eeff27bSStephen Boyd
1023966fab8SGeorgi Djakovconfig MSM_GCC_8916
1033966fab8SGeorgi Djakov	tristate "MSM8916 Global Clock Controller"
104073ae2b4SRajendra Nayak	select QCOM_GDSC
1053966fab8SGeorgi Djakov	depends on COMMON_CLK_QCOM
1063966fab8SGeorgi Djakov	help
1073966fab8SGeorgi Djakov	  Support for the global clock controller on msm8916 devices.
1083966fab8SGeorgi Djakov	  Say Y if you want to use devices such as UART, SPI i2c, USB,
1093966fab8SGeorgi Djakov	  SD/eMMC, display, graphics, camera etc.
1103966fab8SGeorgi Djakov
1112ec94130SStephen Boydconfig MSM_GCC_8960
1122d85a713SKumar Gala	tristate "APQ8064/MSM8960 Global Clock Controller"
1132ec94130SStephen Boyd	depends on COMMON_CLK_QCOM
1142ec94130SStephen Boyd	help
1152d85a713SKumar Gala	  Support for the global clock controller on apq8064/msm8960 devices.
1162ec94130SStephen Boyd	  Say Y if you want to use peripheral devices such as UART, SPI,
1172ec94130SStephen Boyd	  i2c, USB, SD/eMMC, SATA, PCIe, etc.
1186d00b56fSStephen Boyd
119b82875eeSStephen Boydconfig MSM_LCC_8960
120b82875eeSStephen Boyd	tristate "APQ8064/MSM8960 LPASS Clock Controller"
121b82875eeSStephen Boyd	select MSM_GCC_8960
122b82875eeSStephen Boyd	depends on COMMON_CLK_QCOM
123b82875eeSStephen Boyd	help
124b82875eeSStephen Boyd	  Support for the LPASS clock controller on apq8064/msm8960 devices.
125b82875eeSStephen Boyd	  Say Y if you want to use audio devices such as i2s, pcm,
126b82875eeSStephen Boyd	  SLIMBus, etc.
127b82875eeSStephen Boyd
1287792a8d6SNeil Armstrongconfig MDM_GCC_9615
1297792a8d6SNeil Armstrong	tristate "MDM9615 Global Clock Controller"
1307792a8d6SNeil Armstrong	depends on COMMON_CLK_QCOM
1317792a8d6SNeil Armstrong	help
1327792a8d6SNeil Armstrong	  Support for the global clock controller on mdm9615 devices.
1337792a8d6SNeil Armstrong	  Say Y if you want to use peripheral devices such as UART, SPI,
1347792a8d6SNeil Armstrong	  i2c, USB, SD/eMMC, etc.
1357792a8d6SNeil Armstrong
1367792a8d6SNeil Armstrongconfig MDM_LCC_9615
1377792a8d6SNeil Armstrong	tristate "MDM9615 LPASS Clock Controller"
1387792a8d6SNeil Armstrong	select MDM_GCC_9615
1397792a8d6SNeil Armstrong	depends on COMMON_CLK_QCOM
1407792a8d6SNeil Armstrong	help
1417792a8d6SNeil Armstrong	  Support for the LPASS clock controller on mdm9615 devices.
1427792a8d6SNeil Armstrong	  Say Y if you want to use audio devices such as i2s, pcm,
1437792a8d6SNeil Armstrong	  SLIMBus, etc.
1447792a8d6SNeil Armstrong
1456d00b56fSStephen Boydconfig MSM_MMCC_8960
1466d00b56fSStephen Boyd	tristate "MSM8960 Multimedia Clock Controller"
1476d00b56fSStephen Boyd	select MSM_GCC_8960
1486d00b56fSStephen Boyd	depends on COMMON_CLK_QCOM
1496d00b56fSStephen Boyd	help
1506d00b56fSStephen Boyd	  Support for the multimedia clock controller on msm8960 devices.
1516d00b56fSStephen Boyd	  Say Y if you want to support multimedia devices such as display,
1526d00b56fSStephen Boyd	  graphics, video encode/decode, camera, etc.
153d33faa9eSStephen Boyd
154d33faa9eSStephen Boydconfig MSM_GCC_8974
155d33faa9eSStephen Boyd	tristate "MSM8974 Global Clock Controller"
156340029efSStephen Boyd	select QCOM_GDSC
157d33faa9eSStephen Boyd	depends on COMMON_CLK_QCOM
158d33faa9eSStephen Boyd	help
159d33faa9eSStephen Boyd	  Support for the global clock controller on msm8974 devices.
160d33faa9eSStephen Boyd	  Say Y if you want to use peripheral devices such as UART, SPI,
161d33faa9eSStephen Boyd	  i2c, USB, SD/eMMC, SATA, PCIe, etc.
162d8b21201SStephen Boyd
163d8b21201SStephen Boydconfig MSM_MMCC_8974
164d8b21201SStephen Boyd	tristate "MSM8974 Multimedia Clock Controller"
165d8b21201SStephen Boyd	select MSM_GCC_8974
1668108b23cSStephen Boyd	select QCOM_GDSC
167d8b21201SStephen Boyd	depends on COMMON_CLK_QCOM
168d8b21201SStephen Boyd	help
169d8b21201SStephen Boyd	  Support for the multimedia clock controller on msm8974 devices.
170d8b21201SStephen Boyd	  Say Y if you want to support multimedia devices such as display,
171d8b21201SStephen Boyd	  graphics, video encode/decode, camera, etc.
172b1e010c0SStephen Boyd
173aec89f78SBastian Köcherconfig MSM_GCC_8994
174aec89f78SBastian Köcher	tristate "MSM8994 Global Clock Controller"
175aec89f78SBastian Köcher	depends on COMMON_CLK_QCOM
176aec89f78SBastian Köcher	help
177aec89f78SBastian Köcher	  Support for the global clock controller on msm8994 devices.
178aec89f78SBastian Köcher	  Say Y if you want to use peripheral devices such as UART, SPI,
179aec89f78SBastian Köcher	  i2c, USB, UFS, SD/eMMC, PCIe, etc.
180aec89f78SBastian Köcher
181b1e010c0SStephen Boydconfig MSM_GCC_8996
182b1e010c0SStephen Boyd	tristate "MSM8996 Global Clock Controller"
1836d91f2c0SSrinivas Kandagatla	select QCOM_GDSC
184b1e010c0SStephen Boyd	depends on COMMON_CLK_QCOM
185b1e010c0SStephen Boyd	help
186b1e010c0SStephen Boyd	  Support for the global clock controller on msm8996 devices.
187b1e010c0SStephen Boyd	  Say Y if you want to use peripheral devices such as UART, SPI,
188b1e010c0SStephen Boyd	  i2c, USB, UFS, SD/eMMC, PCIe, etc.
189c2526597SStephen Boyd
190c2526597SStephen Boydconfig MSM_MMCC_8996
191c2526597SStephen Boyd	tristate "MSM8996 Multimedia Clock Controller"
192c2526597SStephen Boyd	select MSM_GCC_8996
1936d91f2c0SSrinivas Kandagatla	select QCOM_GDSC
194c2526597SStephen Boyd	depends on COMMON_CLK_QCOM
195c2526597SStephen Boyd	help
196c2526597SStephen Boyd	  Support for the multimedia clock controller on msm8996 devices.
197c2526597SStephen Boyd	  Say Y if you want to support multimedia devices such as display,
198c2526597SStephen Boyd	  graphics, video encode/decode, camera, etc.
199