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 150c6ab1b8SGeorgi Djakovconfig QCOM_A53PLL 160c6ab1b8SGeorgi Djakov tristate "MSM8916 A53 PLL" 170c6ab1b8SGeorgi Djakov depends on COMMON_CLK_QCOM 180c6ab1b8SGeorgi Djakov default ARCH_QCOM 190c6ab1b8SGeorgi Djakov help 200c6ab1b8SGeorgi Djakov Support for the A53 PLL on MSM8916 devices. It provides 210c6ab1b8SGeorgi Djakov the CPU with frequencies above 1GHz. 220c6ab1b8SGeorgi Djakov Say Y if you want to support higher CPU frequencies on MSM8916 230c6ab1b8SGeorgi Djakov devices. 240c6ab1b8SGeorgi Djakov 2581ac3884SGeorgi Djakovconfig QCOM_CLK_APCS_MSM8916 2681ac3884SGeorgi Djakov tristate "MSM8916 APCS Clock Controller" 2781ac3884SGeorgi Djakov depends on COMMON_CLK_QCOM 2881ac3884SGeorgi Djakov depends on QCOM_APCS_IPC || COMPILE_TEST 2981ac3884SGeorgi Djakov default ARCH_QCOM 3081ac3884SGeorgi Djakov help 3181ac3884SGeorgi Djakov Support for the APCS Clock Controller on msm8916 devices. The 3281ac3884SGeorgi Djakov APCS is managing the mux and divider which feeds the CPUs. 3381ac3884SGeorgi Djakov Say Y if you want to support CPU frequency scaling on devices 3481ac3884SGeorgi Djakov such as msm8916. 3581ac3884SGeorgi Djakov 36872f91b5SGeorgi Djakovconfig QCOM_CLK_RPM 37872f91b5SGeorgi Djakov tristate "RPM based Clock Controller" 38872f91b5SGeorgi Djakov depends on COMMON_CLK_QCOM && MFD_QCOM_RPM 39872f91b5SGeorgi Djakov select QCOM_RPMCC 40872f91b5SGeorgi Djakov help 41872f91b5SGeorgi Djakov The RPM (Resource Power Manager) is a dedicated hardware engine for 42872f91b5SGeorgi Djakov managing the shared SoC resources in order to keep the lowest power 43872f91b5SGeorgi Djakov profile. It communicates with other hardware subsystems via shared 44872f91b5SGeorgi Djakov memory and accepts clock requests, aggregates the requests and turns 45872f91b5SGeorgi Djakov the clocks on/off or scales them on demand. 46872f91b5SGeorgi Djakov Say Y if you want to support the clocks exposed by the RPM on 47872f91b5SGeorgi Djakov platforms such as apq8064, msm8660, msm8960 etc. 48872f91b5SGeorgi Djakov 4900f64b58SGeorgi Djakovconfig QCOM_CLK_SMD_RPM 5000f64b58SGeorgi Djakov tristate "RPM over SMD based Clock Controller" 5100f64b58SGeorgi Djakov depends on COMMON_CLK_QCOM && QCOM_SMD_RPM 5200f64b58SGeorgi Djakov select QCOM_RPMCC 5300f64b58SGeorgi Djakov help 5400f64b58SGeorgi Djakov The RPM (Resource Power Manager) is a dedicated hardware engine for 5500f64b58SGeorgi Djakov managing the shared SoC resources in order to keep the lowest power 5600f64b58SGeorgi Djakov profile. It communicates with other hardware subsystems via shared 5700f64b58SGeorgi Djakov memory and accepts clock requests, aggregates the requests and turns 5800f64b58SGeorgi Djakov the clocks on/off or scales them on demand. 5900f64b58SGeorgi Djakov Say Y if you want to support the clocks exposed by the RPM on 6000f64b58SGeorgi Djakov platforms such as apq8016, apq8084, msm8974 etc. 6100f64b58SGeorgi Djakov 6202824653SGeorgi Djakovconfig APQ_GCC_8084 6302824653SGeorgi Djakov tristate "APQ8084 Global Clock Controller" 64639af949SRajendra Nayak select QCOM_GDSC 6502824653SGeorgi Djakov depends on COMMON_CLK_QCOM 6602824653SGeorgi Djakov help 6702824653SGeorgi Djakov Support for the global clock controller on apq8084 devices. 6802824653SGeorgi Djakov Say Y if you want to use peripheral devices such as UART, SPI, 6902824653SGeorgi Djakov i2c, USB, SD/eMMC, SATA, PCIe, etc. 7002824653SGeorgi Djakov 712b46cd23SGeorgi Djakovconfig APQ_MMCC_8084 722b46cd23SGeorgi Djakov tristate "APQ8084 Multimedia Clock Controller" 732b46cd23SGeorgi Djakov select APQ_GCC_8084 74cb2eb7deSStephane Viau select QCOM_GDSC 752b46cd23SGeorgi Djakov depends on COMMON_CLK_QCOM 762b46cd23SGeorgi Djakov help 772b46cd23SGeorgi Djakov Support for the multimedia clock controller on apq8084 devices. 782b46cd23SGeorgi Djakov Say Y if you want to support multimedia devices such as display, 792b46cd23SGeorgi Djakov graphics, video encode/decode, camera, etc. 802b46cd23SGeorgi Djakov 816971e863SVaradarajan Narayananconfig IPQ_GCC_4019 826971e863SVaradarajan Narayanan tristate "IPQ4019 Global Clock Controller" 836971e863SVaradarajan Narayanan depends on COMMON_CLK_QCOM 846971e863SVaradarajan Narayanan help 856971e863SVaradarajan Narayanan Support for the global clock controller on ipq4019 devices. 866971e863SVaradarajan Narayanan Say Y if you want to use peripheral devices such as UART, SPI, 876971e863SVaradarajan Narayanan i2c, USB, SD/eMMC, etc. 886971e863SVaradarajan Narayanan 8924d8fba4SKumar Galaconfig IPQ_GCC_806X 9024d8fba4SKumar Gala tristate "IPQ806x Global Clock Controller" 9124d8fba4SKumar Gala depends on COMMON_CLK_QCOM 9224d8fba4SKumar Gala help 9324d8fba4SKumar Gala Support for the global clock controller on ipq806x devices. 9424d8fba4SKumar Gala Say Y if you want to use peripheral devices such as UART, SPI, 9524d8fba4SKumar Gala i2c, USB, SD/eMMC, etc. 9624d8fba4SKumar Gala 97c99e515aSRajendra Nayakconfig IPQ_LCC_806X 98c99e515aSRajendra Nayak tristate "IPQ806x LPASS Clock Controller" 99c99e515aSRajendra Nayak select IPQ_GCC_806X 100c99e515aSRajendra Nayak depends on COMMON_CLK_QCOM 101c99e515aSRajendra Nayak help 102c99e515aSRajendra Nayak Support for the LPASS clock controller on ipq806x devices. 103c99e515aSRajendra Nayak Say Y if you want to use audio devices such as i2s, pcm, 104c99e515aSRajendra Nayak S/PDIF, etc. 105c99e515aSRajendra Nayak 106371a9507SAbhishek Sahuconfig IPQ_GCC_8074 107371a9507SAbhishek Sahu tristate "IPQ8074 Global Clock Controller" 108371a9507SAbhishek Sahu depends on COMMON_CLK_QCOM 109371a9507SAbhishek Sahu help 110371a9507SAbhishek Sahu Support for global clock controller on ipq8074 devices. 111371a9507SAbhishek Sahu Say Y if you want to use peripheral devices such as UART, SPI, 112371a9507SAbhishek Sahu i2c, USB, SD/eMMC, etc. Select this for the root clock 113371a9507SAbhishek Sahu of ipq8074. 114371a9507SAbhishek Sahu 1150eeff27bSStephen Boydconfig MSM_GCC_8660 1160eeff27bSStephen Boyd tristate "MSM8660 Global Clock Controller" 1170eeff27bSStephen Boyd depends on COMMON_CLK_QCOM 1180eeff27bSStephen Boyd help 1190eeff27bSStephen Boyd Support for the global clock controller on msm8660 devices. 1200eeff27bSStephen Boyd Say Y if you want to use peripheral devices such as UART, SPI, 1210eeff27bSStephen Boyd i2c, USB, SD/eMMC, etc. 1220eeff27bSStephen Boyd 1233966fab8SGeorgi Djakovconfig MSM_GCC_8916 1243966fab8SGeorgi Djakov tristate "MSM8916 Global Clock Controller" 125073ae2b4SRajendra Nayak select QCOM_GDSC 1263966fab8SGeorgi Djakov depends on COMMON_CLK_QCOM 1273966fab8SGeorgi Djakov help 1283966fab8SGeorgi Djakov Support for the global clock controller on msm8916 devices. 1293966fab8SGeorgi Djakov Say Y if you want to use devices such as UART, SPI i2c, USB, 1303966fab8SGeorgi Djakov SD/eMMC, display, graphics, camera etc. 1313966fab8SGeorgi Djakov 1322ec94130SStephen Boydconfig MSM_GCC_8960 1332d85a713SKumar Gala tristate "APQ8064/MSM8960 Global Clock Controller" 1342ec94130SStephen Boyd depends on COMMON_CLK_QCOM 1352ec94130SStephen Boyd help 1362d85a713SKumar Gala Support for the global clock controller on apq8064/msm8960 devices. 1372ec94130SStephen Boyd Say Y if you want to use peripheral devices such as UART, SPI, 1382ec94130SStephen Boyd i2c, USB, SD/eMMC, SATA, PCIe, etc. 1396d00b56fSStephen Boyd 140b82875eeSStephen Boydconfig MSM_LCC_8960 141b82875eeSStephen Boyd tristate "APQ8064/MSM8960 LPASS Clock Controller" 142b82875eeSStephen Boyd select MSM_GCC_8960 143b82875eeSStephen Boyd depends on COMMON_CLK_QCOM 144b82875eeSStephen Boyd help 145b82875eeSStephen Boyd Support for the LPASS clock controller on apq8064/msm8960 devices. 146b82875eeSStephen Boyd Say Y if you want to use audio devices such as i2s, pcm, 147b82875eeSStephen Boyd SLIMBus, etc. 148b82875eeSStephen Boyd 1497792a8d6SNeil Armstrongconfig MDM_GCC_9615 1507792a8d6SNeil Armstrong tristate "MDM9615 Global Clock Controller" 1517792a8d6SNeil Armstrong depends on COMMON_CLK_QCOM 1527792a8d6SNeil Armstrong help 1537792a8d6SNeil Armstrong Support for the global clock controller on mdm9615 devices. 1547792a8d6SNeil Armstrong Say Y if you want to use peripheral devices such as UART, SPI, 1557792a8d6SNeil Armstrong i2c, USB, SD/eMMC, etc. 1567792a8d6SNeil Armstrong 1577792a8d6SNeil Armstrongconfig MDM_LCC_9615 1587792a8d6SNeil Armstrong tristate "MDM9615 LPASS Clock Controller" 1597792a8d6SNeil Armstrong select MDM_GCC_9615 1607792a8d6SNeil Armstrong depends on COMMON_CLK_QCOM 1617792a8d6SNeil Armstrong help 1627792a8d6SNeil Armstrong Support for the LPASS clock controller on mdm9615 devices. 1637792a8d6SNeil Armstrong Say Y if you want to use audio devices such as i2s, pcm, 1647792a8d6SNeil Armstrong SLIMBus, etc. 1657792a8d6SNeil Armstrong 1666d00b56fSStephen Boydconfig MSM_MMCC_8960 1676d00b56fSStephen Boyd tristate "MSM8960 Multimedia Clock Controller" 1686d00b56fSStephen Boyd select MSM_GCC_8960 1696d00b56fSStephen Boyd depends on COMMON_CLK_QCOM 1706d00b56fSStephen Boyd help 1716d00b56fSStephen Boyd Support for the multimedia clock controller on msm8960 devices. 1726d00b56fSStephen Boyd Say Y if you want to support multimedia devices such as display, 1736d00b56fSStephen Boyd graphics, video encode/decode, camera, etc. 174d33faa9eSStephen Boyd 175d33faa9eSStephen Boydconfig MSM_GCC_8974 176d33faa9eSStephen Boyd tristate "MSM8974 Global Clock Controller" 177340029efSStephen Boyd select QCOM_GDSC 178d33faa9eSStephen Boyd depends on COMMON_CLK_QCOM 179d33faa9eSStephen Boyd help 180d33faa9eSStephen Boyd Support for the global clock controller on msm8974 devices. 181d33faa9eSStephen Boyd Say Y if you want to use peripheral devices such as UART, SPI, 182d33faa9eSStephen Boyd i2c, USB, SD/eMMC, SATA, PCIe, etc. 183d8b21201SStephen Boyd 184d8b21201SStephen Boydconfig MSM_MMCC_8974 185d8b21201SStephen Boyd tristate "MSM8974 Multimedia Clock Controller" 186d8b21201SStephen Boyd select MSM_GCC_8974 1878108b23cSStephen Boyd select QCOM_GDSC 188d8b21201SStephen Boyd depends on COMMON_CLK_QCOM 189d8b21201SStephen Boyd help 190d8b21201SStephen Boyd Support for the multimedia clock controller on msm8974 devices. 191d8b21201SStephen Boyd Say Y if you want to support multimedia devices such as display, 192d8b21201SStephen Boyd graphics, video encode/decode, camera, etc. 193b1e010c0SStephen Boyd 194aec89f78SBastian Köcherconfig MSM_GCC_8994 195aec89f78SBastian Köcher tristate "MSM8994 Global Clock Controller" 196aec89f78SBastian Köcher depends on COMMON_CLK_QCOM 197aec89f78SBastian Köcher help 198aec89f78SBastian Köcher Support for the global clock controller on msm8994 devices. 199aec89f78SBastian Köcher Say Y if you want to use peripheral devices such as UART, SPI, 200aec89f78SBastian Köcher i2c, USB, UFS, SD/eMMC, PCIe, etc. 201aec89f78SBastian Köcher 202b1e010c0SStephen Boydconfig MSM_GCC_8996 203b1e010c0SStephen Boyd tristate "MSM8996 Global Clock Controller" 2046d91f2c0SSrinivas Kandagatla select QCOM_GDSC 205b1e010c0SStephen Boyd depends on COMMON_CLK_QCOM 206b1e010c0SStephen Boyd help 207b1e010c0SStephen Boyd Support for the global clock controller on msm8996 devices. 208b1e010c0SStephen Boyd Say Y if you want to use peripheral devices such as UART, SPI, 209b1e010c0SStephen Boyd i2c, USB, UFS, SD/eMMC, PCIe, etc. 210c2526597SStephen Boyd 211c2526597SStephen Boydconfig MSM_MMCC_8996 212c2526597SStephen Boyd tristate "MSM8996 Multimedia Clock Controller" 213c2526597SStephen Boyd select MSM_GCC_8996 2146d91f2c0SSrinivas Kandagatla select QCOM_GDSC 215c2526597SStephen Boyd depends on COMMON_CLK_QCOM 216c2526597SStephen Boyd help 217c2526597SStephen Boyd Support for the multimedia clock controller on msm8996 devices. 218c2526597SStephen Boyd Say Y if you want to support multimedia devices such as display, 219c2526597SStephen Boyd graphics, video encode/decode, camera, etc. 2204cfaa55fSTirupathi Reddy 221*06391eddSTaniya Dasconfig SDM_GCC_845 222*06391eddSTaniya Das tristate "SDM845 Global Clock Controller" 223*06391eddSTaniya Das select QCOM_GDSC 224*06391eddSTaniya Das depends on COMMON_CLK_QCOM 225*06391eddSTaniya Das help 226*06391eddSTaniya Das Support for the global clock controller on msm8998 devices. 227*06391eddSTaniya Das Say Y if you want to use peripheral devices such as UART, SPI, 228*06391eddSTaniya Das I2C, USB, UFS, SDDC, PCIe, etc. 229*06391eddSTaniya Das 2304cfaa55fSTirupathi Reddyconfig SPMI_PMIC_CLKDIV 2314cfaa55fSTirupathi Reddy tristate "SPMI PMIC clkdiv Support" 2324cfaa55fSTirupathi Reddy depends on (COMMON_CLK_QCOM && SPMI) || COMPILE_TEST 2334cfaa55fSTirupathi Reddy help 2344cfaa55fSTirupathi Reddy This driver supports the clkdiv functionality on the Qualcomm 2354cfaa55fSTirupathi Reddy Technologies, Inc. SPMI PMIC. It configures the frequency of 2364cfaa55fSTirupathi Reddy clkdiv outputs of the PMIC. These clocks are typically wired 2374cfaa55fSTirupathi Reddy through alternate functions on GPIO pins. 238