Stephen Boyd | 73bb7dc | 2015-10-08 10:59:32 -0700 | [diff] [blame] | 1 | config QCOM_GDSC |
| 2 | bool |
| 3 | select PM_GENERIC_DOMAINS if PM |
| 4 | |
Georgi Djakov | 00f64b5 | 2016-11-02 17:56:56 +0200 | [diff] [blame] | 5 | config QCOM_RPMCC |
| 6 | bool |
| 7 | |
Stephen Boyd | 085d7a4 | 2014-01-15 10:47:23 -0800 | [diff] [blame] | 8 | config COMMON_CLK_QCOM |
| 9 | tristate "Support for Qualcomm's clock controllers" |
| 10 | depends on OF |
Bartlomiej Zolnierkiewicz | 3937567 | 2015-04-07 14:12:04 +0200 | [diff] [blame] | 11 | depends on ARCH_QCOM || COMPILE_TEST |
Stephen Boyd | 085d7a4 | 2014-01-15 10:47:23 -0800 | [diff] [blame] | 12 | select REGMAP_MMIO |
Stephen Boyd | b36ba30 | 2014-01-15 10:47:27 -0800 | [diff] [blame] | 13 | select RESET_CONTROLLER |
Stephen Boyd | 2ec9413 | 2014-01-15 10:47:28 -0800 | [diff] [blame] | 14 | |
Georgi Djakov | 0c6ab1b | 2017-12-05 17:46:58 +0200 | [diff] [blame] | 15 | config QCOM_A53PLL |
| 16 | tristate "MSM8916 A53 PLL" |
| 17 | depends on COMMON_CLK_QCOM |
| 18 | default ARCH_QCOM |
| 19 | help |
| 20 | Support for the A53 PLL on MSM8916 devices. It provides |
| 21 | the CPU with frequencies above 1GHz. |
| 22 | Say Y if you want to support higher CPU frequencies on MSM8916 |
| 23 | devices. |
| 24 | |
Georgi Djakov | 81ac388 | 2017-12-05 17:47:01 +0200 | [diff] [blame] | 25 | config QCOM_CLK_APCS_MSM8916 |
| 26 | tristate "MSM8916 APCS Clock Controller" |
| 27 | depends on COMMON_CLK_QCOM |
| 28 | depends on QCOM_APCS_IPC || COMPILE_TEST |
| 29 | default ARCH_QCOM |
| 30 | help |
| 31 | Support for the APCS Clock Controller on msm8916 devices. The |
| 32 | APCS is managing the mux and divider which feeds the CPUs. |
| 33 | Say Y if you want to support CPU frequency scaling on devices |
| 34 | such as msm8916. |
| 35 | |
Georgi Djakov | 872f91b5 | 2016-11-02 17:56:57 +0200 | [diff] [blame] | 36 | config QCOM_CLK_RPM |
| 37 | tristate "RPM based Clock Controller" |
| 38 | depends on COMMON_CLK_QCOM && MFD_QCOM_RPM |
| 39 | select QCOM_RPMCC |
| 40 | help |
| 41 | The RPM (Resource Power Manager) is a dedicated hardware engine for |
| 42 | managing the shared SoC resources in order to keep the lowest power |
| 43 | profile. It communicates with other hardware subsystems via shared |
| 44 | memory and accepts clock requests, aggregates the requests and turns |
| 45 | the clocks on/off or scales them on demand. |
| 46 | Say Y if you want to support the clocks exposed by the RPM on |
| 47 | platforms such as apq8064, msm8660, msm8960 etc. |
| 48 | |
Georgi Djakov | 00f64b5 | 2016-11-02 17:56:56 +0200 | [diff] [blame] | 49 | config QCOM_CLK_SMD_RPM |
| 50 | tristate "RPM over SMD based Clock Controller" |
| 51 | depends on COMMON_CLK_QCOM && QCOM_SMD_RPM |
| 52 | select QCOM_RPMCC |
| 53 | help |
| 54 | The RPM (Resource Power Manager) is a dedicated hardware engine for |
| 55 | managing the shared SoC resources in order to keep the lowest power |
| 56 | profile. It communicates with other hardware subsystems via shared |
| 57 | memory and accepts clock requests, aggregates the requests and turns |
| 58 | the clocks on/off or scales them on demand. |
| 59 | Say Y if you want to support the clocks exposed by the RPM on |
| 60 | platforms such as apq8016, apq8084, msm8974 etc. |
| 61 | |
Georgi Djakov | 0282465 | 2014-06-03 17:24:09 +0300 | [diff] [blame] | 62 | config APQ_GCC_8084 |
| 63 | tristate "APQ8084 Global Clock Controller" |
Rajendra Nayak | 639af94 | 2015-08-06 16:07:49 +0530 | [diff] [blame] | 64 | select QCOM_GDSC |
Georgi Djakov | 0282465 | 2014-06-03 17:24:09 +0300 | [diff] [blame] | 65 | depends on COMMON_CLK_QCOM |
| 66 | help |
| 67 | Support for the global clock controller on apq8084 devices. |
| 68 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 69 | i2c, USB, SD/eMMC, SATA, PCIe, etc. |
| 70 | |
Georgi Djakov | 2b46cd2 | 2014-06-12 19:41:42 +0300 | [diff] [blame] | 71 | config APQ_MMCC_8084 |
| 72 | tristate "APQ8084 Multimedia Clock Controller" |
| 73 | select APQ_GCC_8084 |
Stephane Viau | cb2eb7d | 2015-08-06 16:07:50 +0530 | [diff] [blame] | 74 | select QCOM_GDSC |
Georgi Djakov | 2b46cd2 | 2014-06-12 19:41:42 +0300 | [diff] [blame] | 75 | depends on COMMON_CLK_QCOM |
| 76 | help |
| 77 | Support for the multimedia clock controller on apq8084 devices. |
| 78 | Say Y if you want to support multimedia devices such as display, |
| 79 | graphics, video encode/decode, camera, etc. |
| 80 | |
Varadarajan Narayanan | 6971e86 | 2015-11-19 17:19:29 -0600 | [diff] [blame] | 81 | config IPQ_GCC_4019 |
| 82 | tristate "IPQ4019 Global Clock Controller" |
| 83 | depends on COMMON_CLK_QCOM |
| 84 | help |
| 85 | Support for the global clock controller on ipq4019 devices. |
| 86 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 87 | i2c, USB, SD/eMMC, etc. |
| 88 | |
Kumar Gala | 24d8fba | 2014-06-17 14:46:51 -0500 | [diff] [blame] | 89 | config IPQ_GCC_806X |
| 90 | tristate "IPQ806x Global Clock Controller" |
| 91 | depends on COMMON_CLK_QCOM |
| 92 | help |
| 93 | Support for the global clock controller on ipq806x devices. |
| 94 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 95 | i2c, USB, SD/eMMC, etc. |
| 96 | |
Rajendra Nayak | c99e515 | 2015-01-19 18:05:33 -0800 | [diff] [blame] | 97 | config IPQ_LCC_806X |
| 98 | tristate "IPQ806x LPASS Clock Controller" |
| 99 | select IPQ_GCC_806X |
| 100 | depends on COMMON_CLK_QCOM |
| 101 | help |
| 102 | Support for the LPASS clock controller on ipq806x devices. |
| 103 | Say Y if you want to use audio devices such as i2s, pcm, |
| 104 | S/PDIF, etc. |
| 105 | |
Abhishek Sahu | 371a950 | 2017-06-09 15:11:57 +0530 | [diff] [blame] | 106 | config IPQ_GCC_8074 |
| 107 | tristate "IPQ8074 Global Clock Controller" |
| 108 | depends on COMMON_CLK_QCOM |
| 109 | help |
| 110 | Support for global clock controller on ipq8074 devices. |
| 111 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 112 | i2c, USB, SD/eMMC, etc. Select this for the root clock |
| 113 | of ipq8074. |
| 114 | |
Stephen Boyd | 0eeff27 | 2014-01-15 10:47:32 -0800 | [diff] [blame] | 115 | config MSM_GCC_8660 |
| 116 | tristate "MSM8660 Global Clock Controller" |
| 117 | depends on COMMON_CLK_QCOM |
| 118 | help |
| 119 | Support for the global clock controller on msm8660 devices. |
| 120 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 121 | i2c, USB, SD/eMMC, etc. |
| 122 | |
Georgi Djakov | 3966fab | 2015-03-18 16:08:22 +0200 | [diff] [blame] | 123 | config MSM_GCC_8916 |
| 124 | tristate "MSM8916 Global Clock Controller" |
Rajendra Nayak | 073ae2b | 2015-08-06 16:07:46 +0530 | [diff] [blame] | 125 | select QCOM_GDSC |
Georgi Djakov | 3966fab | 2015-03-18 16:08:22 +0200 | [diff] [blame] | 126 | depends on COMMON_CLK_QCOM |
| 127 | help |
| 128 | Support for the global clock controller on msm8916 devices. |
| 129 | Say Y if you want to use devices such as UART, SPI i2c, USB, |
| 130 | SD/eMMC, display, graphics, camera etc. |
| 131 | |
Stephen Boyd | 2ec9413 | 2014-01-15 10:47:28 -0800 | [diff] [blame] | 132 | config MSM_GCC_8960 |
Kumar Gala | 2d85a71 | 2014-04-04 11:31:29 -0500 | [diff] [blame] | 133 | tristate "APQ8064/MSM8960 Global Clock Controller" |
Stephen Boyd | 2ec9413 | 2014-01-15 10:47:28 -0800 | [diff] [blame] | 134 | depends on COMMON_CLK_QCOM |
| 135 | help |
Kumar Gala | 2d85a71 | 2014-04-04 11:31:29 -0500 | [diff] [blame] | 136 | Support for the global clock controller on apq8064/msm8960 devices. |
Stephen Boyd | 2ec9413 | 2014-01-15 10:47:28 -0800 | [diff] [blame] | 137 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 138 | i2c, USB, SD/eMMC, SATA, PCIe, etc. |
Stephen Boyd | 6d00b56 | 2014-01-15 10:47:29 -0800 | [diff] [blame] | 139 | |
Stephen Boyd | b82875e | 2015-01-19 18:05:34 -0800 | [diff] [blame] | 140 | config MSM_LCC_8960 |
| 141 | tristate "APQ8064/MSM8960 LPASS Clock Controller" |
| 142 | select MSM_GCC_8960 |
| 143 | depends on COMMON_CLK_QCOM |
| 144 | help |
| 145 | Support for the LPASS clock controller on apq8064/msm8960 devices. |
| 146 | Say Y if you want to use audio devices such as i2s, pcm, |
| 147 | SLIMBus, etc. |
| 148 | |
Neil Armstrong | 7792a8d | 2016-08-11 14:48:04 +0200 | [diff] [blame] | 149 | config MDM_GCC_9615 |
| 150 | tristate "MDM9615 Global Clock Controller" |
| 151 | depends on COMMON_CLK_QCOM |
| 152 | help |
| 153 | Support for the global clock controller on mdm9615 devices. |
| 154 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 155 | i2c, USB, SD/eMMC, etc. |
| 156 | |
| 157 | config MDM_LCC_9615 |
| 158 | tristate "MDM9615 LPASS Clock Controller" |
| 159 | select MDM_GCC_9615 |
| 160 | depends on COMMON_CLK_QCOM |
| 161 | help |
| 162 | Support for the LPASS clock controller on mdm9615 devices. |
| 163 | Say Y if you want to use audio devices such as i2s, pcm, |
| 164 | SLIMBus, etc. |
| 165 | |
Stephen Boyd | 6d00b56 | 2014-01-15 10:47:29 -0800 | [diff] [blame] | 166 | config MSM_MMCC_8960 |
| 167 | tristate "MSM8960 Multimedia Clock Controller" |
| 168 | select MSM_GCC_8960 |
| 169 | depends on COMMON_CLK_QCOM |
| 170 | help |
| 171 | Support for the multimedia clock controller on msm8960 devices. |
| 172 | Say Y if you want to support multimedia devices such as display, |
| 173 | graphics, video encode/decode, camera, etc. |
Stephen Boyd | d33faa9 | 2014-01-15 10:47:30 -0800 | [diff] [blame] | 174 | |
| 175 | config MSM_GCC_8974 |
| 176 | tristate "MSM8974 Global Clock Controller" |
Stephen Boyd | 340029e | 2015-08-06 16:07:47 +0530 | [diff] [blame] | 177 | select QCOM_GDSC |
Stephen Boyd | d33faa9 | 2014-01-15 10:47:30 -0800 | [diff] [blame] | 178 | depends on COMMON_CLK_QCOM |
| 179 | help |
| 180 | Support for the global clock controller on msm8974 devices. |
| 181 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 182 | i2c, USB, SD/eMMC, SATA, PCIe, etc. |
Stephen Boyd | d8b2120 | 2014-01-15 10:47:31 -0800 | [diff] [blame] | 183 | |
| 184 | config MSM_MMCC_8974 |
| 185 | tristate "MSM8974 Multimedia Clock Controller" |
| 186 | select MSM_GCC_8974 |
Stephen Boyd | 8108b23 | 2015-08-06 16:07:48 +0530 | [diff] [blame] | 187 | select QCOM_GDSC |
Stephen Boyd | d8b2120 | 2014-01-15 10:47:31 -0800 | [diff] [blame] | 188 | depends on COMMON_CLK_QCOM |
| 189 | help |
| 190 | Support for the multimedia clock controller on msm8974 devices. |
| 191 | Say Y if you want to support multimedia devices such as display, |
| 192 | graphics, video encode/decode, camera, etc. |
Stephen Boyd | b1e010c | 2015-11-30 17:31:40 -0800 | [diff] [blame] | 193 | |
Bastian Köcher | aec89f7 | 2016-11-04 13:56:35 -0700 | [diff] [blame] | 194 | config MSM_GCC_8994 |
| 195 | tristate "MSM8994 Global Clock Controller" |
| 196 | depends on COMMON_CLK_QCOM |
| 197 | help |
| 198 | Support for the global clock controller on msm8994 devices. |
| 199 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 200 | i2c, USB, UFS, SD/eMMC, PCIe, etc. |
| 201 | |
Stephen Boyd | b1e010c | 2015-11-30 17:31:40 -0800 | [diff] [blame] | 202 | config MSM_GCC_8996 |
| 203 | tristate "MSM8996 Global Clock Controller" |
Srinivas Kandagatla | 6d91f2c | 2016-08-25 12:28:07 +0100 | [diff] [blame] | 204 | select QCOM_GDSC |
Stephen Boyd | b1e010c | 2015-11-30 17:31:40 -0800 | [diff] [blame] | 205 | depends on COMMON_CLK_QCOM |
| 206 | help |
| 207 | Support for the global clock controller on msm8996 devices. |
| 208 | Say Y if you want to use peripheral devices such as UART, SPI, |
| 209 | i2c, USB, UFS, SD/eMMC, PCIe, etc. |
Stephen Boyd | c252659 | 2015-11-30 17:31:42 -0800 | [diff] [blame] | 210 | |
| 211 | config MSM_MMCC_8996 |
| 212 | tristate "MSM8996 Multimedia Clock Controller" |
| 213 | select MSM_GCC_8996 |
Srinivas Kandagatla | 6d91f2c | 2016-08-25 12:28:07 +0100 | [diff] [blame] | 214 | select QCOM_GDSC |
Stephen Boyd | c252659 | 2015-11-30 17:31:42 -0800 | [diff] [blame] | 215 | depends on COMMON_CLK_QCOM |
| 216 | help |
| 217 | Support for the multimedia clock controller on msm8996 devices. |
| 218 | Say Y if you want to support multimedia devices such as display, |
| 219 | graphics, video encode/decode, camera, etc. |
Tirupathi Reddy | 4cfaa55 | 2017-11-21 14:41:04 +0530 | [diff] [blame] | 220 | |
| 221 | config SPMI_PMIC_CLKDIV |
| 222 | tristate "SPMI PMIC clkdiv Support" |
| 223 | depends on (COMMON_CLK_QCOM && SPMI) || COMPILE_TEST |
| 224 | help |
| 225 | This driver supports the clkdiv functionality on the Qualcomm |
| 226 | Technologies, Inc. SPMI PMIC. It configures the frequency of |
| 227 | clkdiv outputs of the PMIC. These clocks are typically wired |
| 228 | through alternate functions on GPIO pins. |