18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ciconfig KRAIT_CLOCKS
38c2ecf20Sopenharmony_ci	bool
48c2ecf20Sopenharmony_ci	select KRAIT_L2_ACCESSORS
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciconfig QCOM_GDSC
78c2ecf20Sopenharmony_ci	bool
88c2ecf20Sopenharmony_ci	select PM_GENERIC_DOMAINS if PM
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ciconfig QCOM_RPMCC
118c2ecf20Sopenharmony_ci	bool
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_cimenuconfig COMMON_CLK_QCOM
148c2ecf20Sopenharmony_ci	tristate "Support for Qualcomm's clock controllers"
158c2ecf20Sopenharmony_ci	depends on OF
168c2ecf20Sopenharmony_ci	depends on ARCH_QCOM || COMPILE_TEST
178c2ecf20Sopenharmony_ci	select RATIONAL
188c2ecf20Sopenharmony_ci	select REGMAP_MMIO
198c2ecf20Sopenharmony_ci	select RESET_CONTROLLER
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ciif COMMON_CLK_QCOM
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ciconfig QCOM_A53PLL
248c2ecf20Sopenharmony_ci	tristate "MSM8916 A53 PLL"
258c2ecf20Sopenharmony_ci	help
268c2ecf20Sopenharmony_ci	  Support for the A53 PLL on MSM8916 devices. It provides
278c2ecf20Sopenharmony_ci	  the CPU with frequencies above 1GHz.
288c2ecf20Sopenharmony_ci	  Say Y if you want to support higher CPU frequencies on MSM8916
298c2ecf20Sopenharmony_ci	  devices.
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ciconfig QCOM_CLK_APCS_MSM8916
328c2ecf20Sopenharmony_ci	tristate "MSM8916 APCS Clock Controller"
338c2ecf20Sopenharmony_ci	depends on QCOM_APCS_IPC || COMPILE_TEST
348c2ecf20Sopenharmony_ci	help
358c2ecf20Sopenharmony_ci	  Support for the APCS Clock Controller on msm8916 devices. The
368c2ecf20Sopenharmony_ci	  APCS is managing the mux and divider which feeds the CPUs.
378c2ecf20Sopenharmony_ci	  Say Y if you want to support CPU frequency scaling on devices
388c2ecf20Sopenharmony_ci	  such as msm8916.
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ciconfig QCOM_CLK_APCC_MSM8996
418c2ecf20Sopenharmony_ci	tristate "MSM8996 CPU Clock Controller"
428c2ecf20Sopenharmony_ci	select QCOM_KRYO_L2_ACCESSORS
438c2ecf20Sopenharmony_ci	depends on ARM64
448c2ecf20Sopenharmony_ci	help
458c2ecf20Sopenharmony_ci	  Support for the CPU clock controller on msm8996 devices.
468c2ecf20Sopenharmony_ci	  Say Y if you want to support CPU clock scaling using CPUfreq
478c2ecf20Sopenharmony_ci	  drivers for dyanmic power management.
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ciconfig QCOM_CLK_RPM
508c2ecf20Sopenharmony_ci	tristate "RPM based Clock Controller"
518c2ecf20Sopenharmony_ci	depends on MFD_QCOM_RPM
528c2ecf20Sopenharmony_ci	select QCOM_RPMCC
538c2ecf20Sopenharmony_ci	help
548c2ecf20Sopenharmony_ci	  The RPM (Resource Power Manager) is a dedicated hardware engine for
558c2ecf20Sopenharmony_ci	  managing the shared SoC resources in order to keep the lowest power
568c2ecf20Sopenharmony_ci	  profile. It communicates with other hardware subsystems via shared
578c2ecf20Sopenharmony_ci	  memory and accepts clock requests, aggregates the requests and turns
588c2ecf20Sopenharmony_ci	  the clocks on/off or scales them on demand.
598c2ecf20Sopenharmony_ci	  Say Y if you want to support the clocks exposed by the RPM on
608c2ecf20Sopenharmony_ci	  platforms such as apq8064, msm8660, msm8960 etc.
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ciconfig QCOM_CLK_SMD_RPM
638c2ecf20Sopenharmony_ci	tristate "RPM over SMD based Clock Controller"
648c2ecf20Sopenharmony_ci	depends on QCOM_SMD_RPM
658c2ecf20Sopenharmony_ci	select QCOM_RPMCC
668c2ecf20Sopenharmony_ci	help
678c2ecf20Sopenharmony_ci	  The RPM (Resource Power Manager) is a dedicated hardware engine for
688c2ecf20Sopenharmony_ci	  managing the shared SoC resources in order to keep the lowest power
698c2ecf20Sopenharmony_ci	  profile. It communicates with other hardware subsystems via shared
708c2ecf20Sopenharmony_ci	  memory and accepts clock requests, aggregates the requests and turns
718c2ecf20Sopenharmony_ci	  the clocks on/off or scales them on demand.
728c2ecf20Sopenharmony_ci	  Say Y if you want to support the clocks exposed by the RPM on
738c2ecf20Sopenharmony_ci	  platforms such as apq8016, apq8084, msm8974 etc.
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ciconfig QCOM_CLK_RPMH
768c2ecf20Sopenharmony_ci	tristate "RPMh Clock Driver"
778c2ecf20Sopenharmony_ci	depends on QCOM_RPMH
788c2ecf20Sopenharmony_ci	help
798c2ecf20Sopenharmony_ci	 RPMh manages shared resources on some Qualcomm Technologies, Inc.
808c2ecf20Sopenharmony_ci	 SoCs. It accepts requests from other hardware subsystems via RSC.
818c2ecf20Sopenharmony_ci	 Say Y if you want to support the clocks exposed by RPMh on
828c2ecf20Sopenharmony_ci	 platforms such as SDM845.
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ciconfig APQ_GCC_8084
858c2ecf20Sopenharmony_ci	tristate "APQ8084 Global Clock Controller"
868c2ecf20Sopenharmony_ci	select QCOM_GDSC
878c2ecf20Sopenharmony_ci	help
888c2ecf20Sopenharmony_ci	  Support for the global clock controller on apq8084 devices.
898c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
908c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, SATA, PCIe, etc.
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ciconfig APQ_MMCC_8084
938c2ecf20Sopenharmony_ci	tristate "APQ8084 Multimedia Clock Controller"
948c2ecf20Sopenharmony_ci	select APQ_GCC_8084
958c2ecf20Sopenharmony_ci	select QCOM_GDSC
968c2ecf20Sopenharmony_ci	help
978c2ecf20Sopenharmony_ci	  Support for the multimedia clock controller on apq8084 devices.
988c2ecf20Sopenharmony_ci	  Say Y if you want to support multimedia devices such as display,
998c2ecf20Sopenharmony_ci	  graphics, video encode/decode, camera, etc.
1008c2ecf20Sopenharmony_ci
1018c2ecf20Sopenharmony_ciconfig IPQ_APSS_PLL
1028c2ecf20Sopenharmony_ci	tristate "IPQ APSS PLL"
1038c2ecf20Sopenharmony_ci	help
1048c2ecf20Sopenharmony_ci	  Support for APSS PLL on ipq devices. The APSS PLL is the main
1058c2ecf20Sopenharmony_ci	  clock that feeds the CPUs on ipq based devices.
1068c2ecf20Sopenharmony_ci	  Say Y if you want to support CPU frequency scaling on ipq based
1078c2ecf20Sopenharmony_ci	  devices.
1088c2ecf20Sopenharmony_ci
1098c2ecf20Sopenharmony_ciconfig IPQ_APSS_6018
1108c2ecf20Sopenharmony_ci	tristate "IPQ APSS Clock Controller"
1118c2ecf20Sopenharmony_ci	select IPQ_APSS_PLL
1128c2ecf20Sopenharmony_ci	depends on QCOM_APCS_IPC || COMPILE_TEST
1138c2ecf20Sopenharmony_ci	depends on QCOM_SMEM
1148c2ecf20Sopenharmony_ci	help
1158c2ecf20Sopenharmony_ci	  Support for APSS clock controller on IPQ platforms. The
1168c2ecf20Sopenharmony_ci	  APSS clock controller manages the Mux and enable block that feeds the
1178c2ecf20Sopenharmony_ci	  CPUs.
1188c2ecf20Sopenharmony_ci	  Say Y if you want to support CPU frequency scaling on
1198c2ecf20Sopenharmony_ci	  ipq based devices.
1208c2ecf20Sopenharmony_ci
1218c2ecf20Sopenharmony_ciconfig IPQ_GCC_4019
1228c2ecf20Sopenharmony_ci	tristate "IPQ4019 Global Clock Controller"
1238c2ecf20Sopenharmony_ci	help
1248c2ecf20Sopenharmony_ci	  Support for the global clock controller on ipq4019 devices.
1258c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
1268c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, etc.
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ciconfig IPQ_GCC_6018
1298c2ecf20Sopenharmony_ci	tristate "IPQ6018 Global Clock Controller"
1308c2ecf20Sopenharmony_ci	help
1318c2ecf20Sopenharmony_ci	  Support for global clock controller on ipq6018 devices.
1328c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
1338c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, etc. Select this for the root clock
1348c2ecf20Sopenharmony_ci	  of ipq6018.
1358c2ecf20Sopenharmony_ci
1368c2ecf20Sopenharmony_ciconfig IPQ_GCC_806X
1378c2ecf20Sopenharmony_ci	tristate "IPQ806x Global Clock Controller"
1388c2ecf20Sopenharmony_ci	help
1398c2ecf20Sopenharmony_ci	  Support for the global clock controller on ipq806x devices.
1408c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
1418c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, etc.
1428c2ecf20Sopenharmony_ci
1438c2ecf20Sopenharmony_ciconfig IPQ_LCC_806X
1448c2ecf20Sopenharmony_ci	tristate "IPQ806x LPASS Clock Controller"
1458c2ecf20Sopenharmony_ci	select IPQ_GCC_806X
1468c2ecf20Sopenharmony_ci	help
1478c2ecf20Sopenharmony_ci	  Support for the LPASS clock controller on ipq806x devices.
1488c2ecf20Sopenharmony_ci	  Say Y if you want to use audio devices such as i2s, pcm,
1498c2ecf20Sopenharmony_ci	  S/PDIF, etc.
1508c2ecf20Sopenharmony_ci
1518c2ecf20Sopenharmony_ciconfig IPQ_GCC_8074
1528c2ecf20Sopenharmony_ci	tristate "IPQ8074 Global Clock Controller"
1538c2ecf20Sopenharmony_ci	help
1548c2ecf20Sopenharmony_ci	  Support for global clock controller on ipq8074 devices.
1558c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
1568c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, etc. Select this for the root clock
1578c2ecf20Sopenharmony_ci	  of ipq8074.
1588c2ecf20Sopenharmony_ci
1598c2ecf20Sopenharmony_ciconfig MSM_GCC_8660
1608c2ecf20Sopenharmony_ci	tristate "MSM8660 Global Clock Controller"
1618c2ecf20Sopenharmony_ci	help
1628c2ecf20Sopenharmony_ci	  Support for the global clock controller on msm8660 devices.
1638c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
1648c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, etc.
1658c2ecf20Sopenharmony_ci
1668c2ecf20Sopenharmony_ciconfig MSM_GCC_8916
1678c2ecf20Sopenharmony_ci	tristate "MSM8916 Global Clock Controller"
1688c2ecf20Sopenharmony_ci	select QCOM_GDSC
1698c2ecf20Sopenharmony_ci	help
1708c2ecf20Sopenharmony_ci	  Support for the global clock controller on msm8916 devices.
1718c2ecf20Sopenharmony_ci	  Say Y if you want to use devices such as UART, SPI i2c, USB,
1728c2ecf20Sopenharmony_ci	  SD/eMMC, display, graphics, camera etc.
1738c2ecf20Sopenharmony_ci
1748c2ecf20Sopenharmony_ciconfig MSM_GCC_8939
1758c2ecf20Sopenharmony_ci	tristate "MSM8939 Global Clock Controller"
1768c2ecf20Sopenharmony_ci	select QCOM_GDSC
1778c2ecf20Sopenharmony_ci	help
1788c2ecf20Sopenharmony_ci	  Support for the global clock controller on msm8939 devices.
1798c2ecf20Sopenharmony_ci	  Say Y if you want to use devices such as UART, SPI i2c, USB,
1808c2ecf20Sopenharmony_ci	  SD/eMMC, display, graphics, camera etc.
1818c2ecf20Sopenharmony_ci
1828c2ecf20Sopenharmony_ciconfig MSM_GCC_8960
1838c2ecf20Sopenharmony_ci	tristate "APQ8064/MSM8960 Global Clock Controller"
1848c2ecf20Sopenharmony_ci	help
1858c2ecf20Sopenharmony_ci	  Support for the global clock controller on apq8064/msm8960 devices.
1868c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
1878c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, SATA, PCIe, etc.
1888c2ecf20Sopenharmony_ci
1898c2ecf20Sopenharmony_ciconfig MSM_LCC_8960
1908c2ecf20Sopenharmony_ci	tristate "APQ8064/MSM8960 LPASS Clock Controller"
1918c2ecf20Sopenharmony_ci	select MSM_GCC_8960
1928c2ecf20Sopenharmony_ci	help
1938c2ecf20Sopenharmony_ci	  Support for the LPASS clock controller on apq8064/msm8960 devices.
1948c2ecf20Sopenharmony_ci	  Say Y if you want to use audio devices such as i2s, pcm,
1958c2ecf20Sopenharmony_ci	  SLIMBus, etc.
1968c2ecf20Sopenharmony_ci
1978c2ecf20Sopenharmony_ciconfig MDM_GCC_9615
1988c2ecf20Sopenharmony_ci	tristate "MDM9615 Global Clock Controller"
1998c2ecf20Sopenharmony_ci	help
2008c2ecf20Sopenharmony_ci	  Support for the global clock controller on mdm9615 devices.
2018c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
2028c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, etc.
2038c2ecf20Sopenharmony_ci
2048c2ecf20Sopenharmony_ciconfig MDM_LCC_9615
2058c2ecf20Sopenharmony_ci	tristate "MDM9615 LPASS Clock Controller"
2068c2ecf20Sopenharmony_ci	select MDM_GCC_9615
2078c2ecf20Sopenharmony_ci	help
2088c2ecf20Sopenharmony_ci	  Support for the LPASS clock controller on mdm9615 devices.
2098c2ecf20Sopenharmony_ci	  Say Y if you want to use audio devices such as i2s, pcm,
2108c2ecf20Sopenharmony_ci	  SLIMBus, etc.
2118c2ecf20Sopenharmony_ci
2128c2ecf20Sopenharmony_ciconfig MSM_MMCC_8960
2138c2ecf20Sopenharmony_ci	tristate "MSM8960 Multimedia Clock Controller"
2148c2ecf20Sopenharmony_ci	select MSM_GCC_8960
2158c2ecf20Sopenharmony_ci	help
2168c2ecf20Sopenharmony_ci	  Support for the multimedia clock controller on msm8960 devices.
2178c2ecf20Sopenharmony_ci	  Say Y if you want to support multimedia devices such as display,
2188c2ecf20Sopenharmony_ci	  graphics, video encode/decode, camera, etc.
2198c2ecf20Sopenharmony_ci
2208c2ecf20Sopenharmony_ciconfig MSM_GCC_8974
2218c2ecf20Sopenharmony_ci	tristate "MSM8974 Global Clock Controller"
2228c2ecf20Sopenharmony_ci	select QCOM_GDSC
2238c2ecf20Sopenharmony_ci	help
2248c2ecf20Sopenharmony_ci	  Support for the global clock controller on msm8974 devices.
2258c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
2268c2ecf20Sopenharmony_ci	  i2c, USB, SD/eMMC, SATA, PCIe, etc.
2278c2ecf20Sopenharmony_ci
2288c2ecf20Sopenharmony_ciconfig MSM_MMCC_8974
2298c2ecf20Sopenharmony_ci	tristate "MSM8974 Multimedia Clock Controller"
2308c2ecf20Sopenharmony_ci	select MSM_GCC_8974
2318c2ecf20Sopenharmony_ci	select QCOM_GDSC
2328c2ecf20Sopenharmony_ci	help
2338c2ecf20Sopenharmony_ci	  Support for the multimedia clock controller on msm8974 devices.
2348c2ecf20Sopenharmony_ci	  Say Y if you want to support multimedia devices such as display,
2358c2ecf20Sopenharmony_ci	  graphics, video encode/decode, camera, etc.
2368c2ecf20Sopenharmony_ci
2378c2ecf20Sopenharmony_ciconfig MSM_GCC_8994
2388c2ecf20Sopenharmony_ci	tristate "MSM8994 Global Clock Controller"
2398c2ecf20Sopenharmony_ci	help
2408c2ecf20Sopenharmony_ci	  Support for the global clock controller on msm8994 devices.
2418c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
2428c2ecf20Sopenharmony_ci	  i2c, USB, UFS, SD/eMMC, PCIe, etc.
2438c2ecf20Sopenharmony_ci
2448c2ecf20Sopenharmony_ciconfig MSM_GCC_8996
2458c2ecf20Sopenharmony_ci	tristate "MSM8996 Global Clock Controller"
2468c2ecf20Sopenharmony_ci	select QCOM_GDSC
2478c2ecf20Sopenharmony_ci	help
2488c2ecf20Sopenharmony_ci	  Support for the global clock controller on msm8996 devices.
2498c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
2508c2ecf20Sopenharmony_ci	  i2c, USB, UFS, SD/eMMC, PCIe, etc.
2518c2ecf20Sopenharmony_ci
2528c2ecf20Sopenharmony_ciconfig MSM_MMCC_8996
2538c2ecf20Sopenharmony_ci	tristate "MSM8996 Multimedia Clock Controller"
2548c2ecf20Sopenharmony_ci	select MSM_GCC_8996
2558c2ecf20Sopenharmony_ci	select QCOM_GDSC
2568c2ecf20Sopenharmony_ci	help
2578c2ecf20Sopenharmony_ci	  Support for the multimedia clock controller on msm8996 devices.
2588c2ecf20Sopenharmony_ci	  Say Y if you want to support multimedia devices such as display,
2598c2ecf20Sopenharmony_ci	  graphics, video encode/decode, camera, etc.
2608c2ecf20Sopenharmony_ci
2618c2ecf20Sopenharmony_ciconfig MSM_GCC_8998
2628c2ecf20Sopenharmony_ci	tristate "MSM8998 Global Clock Controller"
2638c2ecf20Sopenharmony_ci	select QCOM_GDSC
2648c2ecf20Sopenharmony_ci	help
2658c2ecf20Sopenharmony_ci	  Support for the global clock controller on msm8998 devices.
2668c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
2678c2ecf20Sopenharmony_ci	  i2c, USB, UFS, SD/eMMC, PCIe, etc.
2688c2ecf20Sopenharmony_ci
2698c2ecf20Sopenharmony_ciconfig MSM_GPUCC_8998
2708c2ecf20Sopenharmony_ci	tristate "MSM8998 Graphics Clock Controller"
2718c2ecf20Sopenharmony_ci	select MSM_GCC_8998
2728c2ecf20Sopenharmony_ci	select QCOM_GDSC
2738c2ecf20Sopenharmony_ci	help
2748c2ecf20Sopenharmony_ci	  Support for the graphics clock controller on MSM8998 devices.
2758c2ecf20Sopenharmony_ci	  Say Y if you want to support graphics controller devices and
2768c2ecf20Sopenharmony_ci	  functionality such as 3D graphics.
2778c2ecf20Sopenharmony_ci
2788c2ecf20Sopenharmony_ciconfig MSM_MMCC_8998
2798c2ecf20Sopenharmony_ci	tristate "MSM8998 Multimedia Clock Controller"
2808c2ecf20Sopenharmony_ci	select MSM_GCC_8998
2818c2ecf20Sopenharmony_ci	select QCOM_GDSC
2828c2ecf20Sopenharmony_ci	help
2838c2ecf20Sopenharmony_ci	  Support for the multimedia clock controller on msm8998 devices.
2848c2ecf20Sopenharmony_ci	  Say Y if you want to support multimedia devices such as display,
2858c2ecf20Sopenharmony_ci	  graphics, video encode/decode, camera, etc.
2868c2ecf20Sopenharmony_ci
2878c2ecf20Sopenharmony_ciconfig QCS_GCC_404
2888c2ecf20Sopenharmony_ci	tristate "QCS404 Global Clock Controller"
2898c2ecf20Sopenharmony_ci	help
2908c2ecf20Sopenharmony_ci	  Support for the global clock controller on QCS404 devices.
2918c2ecf20Sopenharmony_ci	  Say Y if you want to use multimedia devices or peripheral
2928c2ecf20Sopenharmony_ci	  devices such as UART, SPI, I2C, USB, SD/eMMC, PCIe etc.
2938c2ecf20Sopenharmony_ci
2948c2ecf20Sopenharmony_ciconfig SC_DISPCC_7180
2958c2ecf20Sopenharmony_ci	tristate "SC7180 Display Clock Controller"
2968c2ecf20Sopenharmony_ci	select SC_GCC_7180
2978c2ecf20Sopenharmony_ci	help
2988c2ecf20Sopenharmony_ci	  Support for the display clock controller on Qualcomm Technologies, Inc
2998c2ecf20Sopenharmony_ci	  SC7180 devices.
3008c2ecf20Sopenharmony_ci	  Say Y if you want to support display devices and functionality such as
3018c2ecf20Sopenharmony_ci	  splash screen.
3028c2ecf20Sopenharmony_ci
3038c2ecf20Sopenharmony_ciconfig SC_GCC_7180
3048c2ecf20Sopenharmony_ci	tristate "SC7180 Global Clock Controller"
3058c2ecf20Sopenharmony_ci	select QCOM_GDSC
3068c2ecf20Sopenharmony_ci	depends on COMMON_CLK_QCOM
3078c2ecf20Sopenharmony_ci	help
3088c2ecf20Sopenharmony_ci	  Support for the global clock controller on SC7180 devices.
3098c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
3108c2ecf20Sopenharmony_ci	  I2C, USB, UFS, SDCC, etc.
3118c2ecf20Sopenharmony_ci
3128c2ecf20Sopenharmony_ciconfig SC_LPASS_CORECC_7180
3138c2ecf20Sopenharmony_ci	tristate "SC7180 LPASS Core Clock Controller"
3148c2ecf20Sopenharmony_ci	select SC_GCC_7180
3158c2ecf20Sopenharmony_ci	help
3168c2ecf20Sopenharmony_ci	  Support for the LPASS(Low Power Audio Subsystem) core clock controller
3178c2ecf20Sopenharmony_ci	  on SC7180 devices.
3188c2ecf20Sopenharmony_ci	  Say Y if you want to use LPASS clocks and power domains of the LPASS
3198c2ecf20Sopenharmony_ci	  core clock controller.
3208c2ecf20Sopenharmony_ci
3218c2ecf20Sopenharmony_ciconfig SC_GPUCC_7180
3228c2ecf20Sopenharmony_ci	tristate "SC7180 Graphics Clock Controller"
3238c2ecf20Sopenharmony_ci	select SC_GCC_7180
3248c2ecf20Sopenharmony_ci	help
3258c2ecf20Sopenharmony_ci	  Support for the graphics clock controller on SC7180 devices.
3268c2ecf20Sopenharmony_ci	  Say Y if you want to support graphics controller devices and
3278c2ecf20Sopenharmony_ci	  functionality such as 3D graphics.
3288c2ecf20Sopenharmony_ci
3298c2ecf20Sopenharmony_ciconfig SC_MSS_7180
3308c2ecf20Sopenharmony_ci	tristate "SC7180 Modem Clock Controller"
3318c2ecf20Sopenharmony_ci	select SC_GCC_7180
3328c2ecf20Sopenharmony_ci	help
3338c2ecf20Sopenharmony_ci	  Support for the Modem Subsystem clock controller on Qualcomm
3348c2ecf20Sopenharmony_ci	  Technologies, Inc on SC7180 devices.
3358c2ecf20Sopenharmony_ci	  Say Y if you want to use the Modem branch clocks of the Modem
3368c2ecf20Sopenharmony_ci	  subsystem clock controller to reset the MSS subsystem.
3378c2ecf20Sopenharmony_ci
3388c2ecf20Sopenharmony_ciconfig SC_VIDEOCC_7180
3398c2ecf20Sopenharmony_ci	tristate "SC7180 Video Clock Controller"
3408c2ecf20Sopenharmony_ci	select SC_GCC_7180
3418c2ecf20Sopenharmony_ci	help
3428c2ecf20Sopenharmony_ci	  Support for the video clock controller on SC7180 devices.
3438c2ecf20Sopenharmony_ci	  Say Y if you want to support video devices and functionality such as
3448c2ecf20Sopenharmony_ci	  video encode and decode.
3458c2ecf20Sopenharmony_ci
3468c2ecf20Sopenharmony_ciconfig SDM_CAMCC_845
3478c2ecf20Sopenharmony_ci	tristate "SDM845 Camera Clock Controller"
3488c2ecf20Sopenharmony_ci	select SDM_GCC_845
3498c2ecf20Sopenharmony_ci	help
3508c2ecf20Sopenharmony_ci	  Support for the camera clock controller on SDM845 devices.
3518c2ecf20Sopenharmony_ci	  Say Y if you want to support camera devices and camera functionality.
3528c2ecf20Sopenharmony_ci
3538c2ecf20Sopenharmony_ciconfig SDM_GCC_660
3548c2ecf20Sopenharmony_ci	tristate "SDM660 Global Clock Controller"
3558c2ecf20Sopenharmony_ci	select QCOM_GDSC
3568c2ecf20Sopenharmony_ci	help
3578c2ecf20Sopenharmony_ci	  Support for the global clock controller on SDM660 devices.
3588c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
3598c2ecf20Sopenharmony_ci	  i2C, USB, UFS, SDDC, PCIe, etc.
3608c2ecf20Sopenharmony_ci
3618c2ecf20Sopenharmony_ciconfig QCS_TURING_404
3628c2ecf20Sopenharmony_ci	tristate "QCS404 Turing Clock Controller"
3638c2ecf20Sopenharmony_ci	help
3648c2ecf20Sopenharmony_ci	  Support for the Turing Clock Controller on QCS404, provides clocks
3658c2ecf20Sopenharmony_ci	  and resets for the Turing subsystem.
3668c2ecf20Sopenharmony_ci
3678c2ecf20Sopenharmony_ciconfig QCS_Q6SSTOP_404
3688c2ecf20Sopenharmony_ci	tristate "QCS404 Q6SSTOP Clock Controller"
3698c2ecf20Sopenharmony_ci	select QCS_GCC_404
3708c2ecf20Sopenharmony_ci	help
3718c2ecf20Sopenharmony_ci	  Support for the Q6SSTOP clock controller on QCS404 devices.
3728c2ecf20Sopenharmony_ci	  Say Y if you want to use the Q6SSTOP branch clocks of the WCSS clock
3738c2ecf20Sopenharmony_ci	  controller to reset the Q6SSTOP subsystem.
3748c2ecf20Sopenharmony_ci
3758c2ecf20Sopenharmony_ciconfig SDM_GCC_845
3768c2ecf20Sopenharmony_ci	tristate "SDM845 Global Clock Controller"
3778c2ecf20Sopenharmony_ci	select QCOM_GDSC
3788c2ecf20Sopenharmony_ci	help
3798c2ecf20Sopenharmony_ci	  Support for the global clock controller on SDM845 devices.
3808c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART, SPI,
3818c2ecf20Sopenharmony_ci	  i2C, USB, UFS, SDDC, PCIe, etc.
3828c2ecf20Sopenharmony_ci
3838c2ecf20Sopenharmony_ciconfig SDM_GPUCC_845
3848c2ecf20Sopenharmony_ci	tristate "SDM845 Graphics Clock Controller"
3858c2ecf20Sopenharmony_ci	select SDM_GCC_845
3868c2ecf20Sopenharmony_ci	help
3878c2ecf20Sopenharmony_ci	  Support for the graphics clock controller on SDM845 devices.
3888c2ecf20Sopenharmony_ci	  Say Y if you want to support graphics controller devices and
3898c2ecf20Sopenharmony_ci	  functionality such as 3D graphics.
3908c2ecf20Sopenharmony_ci
3918c2ecf20Sopenharmony_ciconfig SDM_VIDEOCC_845
3928c2ecf20Sopenharmony_ci	tristate "SDM845 Video Clock Controller"
3938c2ecf20Sopenharmony_ci	select SDM_GCC_845
3948c2ecf20Sopenharmony_ci	select QCOM_GDSC
3958c2ecf20Sopenharmony_ci	help
3968c2ecf20Sopenharmony_ci	  Support for the video clock controller on SDM845 devices.
3978c2ecf20Sopenharmony_ci	  Say Y if you want to support video devices and functionality such as
3988c2ecf20Sopenharmony_ci	  video encode and decode.
3998c2ecf20Sopenharmony_ci
4008c2ecf20Sopenharmony_ciconfig SDM_DISPCC_845
4018c2ecf20Sopenharmony_ci	tristate "SDM845 Display Clock Controller"
4028c2ecf20Sopenharmony_ci	select SDM_GCC_845
4038c2ecf20Sopenharmony_ci	help
4048c2ecf20Sopenharmony_ci	  Support for the display clock controller on Qualcomm Technologies, Inc
4058c2ecf20Sopenharmony_ci	  SDM845 devices.
4068c2ecf20Sopenharmony_ci	  Say Y if you want to support display devices and functionality such as
4078c2ecf20Sopenharmony_ci	  splash screen.
4088c2ecf20Sopenharmony_ci
4098c2ecf20Sopenharmony_ciconfig SDM_LPASSCC_845
4108c2ecf20Sopenharmony_ci	tristate "SDM845 Low Power Audio Subsystem (LPAAS) Clock Controller"
4118c2ecf20Sopenharmony_ci	select SDM_GCC_845
4128c2ecf20Sopenharmony_ci	help
4138c2ecf20Sopenharmony_ci	  Support for the LPASS clock controller on SDM845 devices.
4148c2ecf20Sopenharmony_ci	  Say Y if you want to use the LPASS branch clocks of the LPASS clock
4158c2ecf20Sopenharmony_ci	  controller to reset the LPASS subsystem.
4168c2ecf20Sopenharmony_ci
4178c2ecf20Sopenharmony_ciconfig SM_DISPCC_8250
4188c2ecf20Sopenharmony_ci	tristate "SM8150 and SM8250 Display Clock Controller"
4198c2ecf20Sopenharmony_ci	depends on SM_GCC_8150 || SM_GCC_8250
4208c2ecf20Sopenharmony_ci	help
4218c2ecf20Sopenharmony_ci	  Support for the display clock controller on Qualcomm Technologies, Inc
4228c2ecf20Sopenharmony_ci	  SM8150 and SM8250 devices.
4238c2ecf20Sopenharmony_ci	  Say Y if you want to support display devices and functionality such as
4248c2ecf20Sopenharmony_ci	  splash screen.
4258c2ecf20Sopenharmony_ci
4268c2ecf20Sopenharmony_ciconfig SM_GCC_8150
4278c2ecf20Sopenharmony_ci	tristate "SM8150 Global Clock Controller"
4288c2ecf20Sopenharmony_ci	help
4298c2ecf20Sopenharmony_ci	  Support for the global clock controller on SM8150 devices.
4308c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART,
4318c2ecf20Sopenharmony_ci	  SPI, I2C, USB, SD/UFS, PCIe etc.
4328c2ecf20Sopenharmony_ci
4338c2ecf20Sopenharmony_ciconfig SM_GCC_8250
4348c2ecf20Sopenharmony_ci	tristate "SM8250 Global Clock Controller"
4358c2ecf20Sopenharmony_ci	select QCOM_GDSC
4368c2ecf20Sopenharmony_ci	help
4378c2ecf20Sopenharmony_ci	  Support for the global clock controller on SM8250 devices.
4388c2ecf20Sopenharmony_ci	  Say Y if you want to use peripheral devices such as UART,
4398c2ecf20Sopenharmony_ci	  SPI, I2C, USB, SD/UFS, PCIe etc.
4408c2ecf20Sopenharmony_ci
4418c2ecf20Sopenharmony_ciconfig SM_GPUCC_8150
4428c2ecf20Sopenharmony_ci	tristate "SM8150 Graphics Clock Controller"
4438c2ecf20Sopenharmony_ci	select SM_GCC_8150
4448c2ecf20Sopenharmony_ci	help
4458c2ecf20Sopenharmony_ci	  Support for the graphics clock controller on SM8150 devices.
4468c2ecf20Sopenharmony_ci	  Say Y if you want to support graphics controller devices and
4478c2ecf20Sopenharmony_ci	  functionality such as 3D graphics.
4488c2ecf20Sopenharmony_ci
4498c2ecf20Sopenharmony_ciconfig SM_GPUCC_8250
4508c2ecf20Sopenharmony_ci	tristate "SM8250 Graphics Clock Controller"
4518c2ecf20Sopenharmony_ci	select SM_GCC_8250
4528c2ecf20Sopenharmony_ci	help
4538c2ecf20Sopenharmony_ci	  Support for the graphics clock controller on SM8250 devices.
4548c2ecf20Sopenharmony_ci	  Say Y if you want to support graphics controller devices and
4558c2ecf20Sopenharmony_ci	  functionality such as 3D graphics.
4568c2ecf20Sopenharmony_ci
4578c2ecf20Sopenharmony_ciconfig SM_VIDEOCC_8150
4588c2ecf20Sopenharmony_ci	tristate "SM8150 Video Clock Controller"
4598c2ecf20Sopenharmony_ci	select SDM_GCC_8150
4608c2ecf20Sopenharmony_ci	select QCOM_GDSC
4618c2ecf20Sopenharmony_ci	help
4628c2ecf20Sopenharmony_ci	  Support for the video clock controller on SM8150 devices.
4638c2ecf20Sopenharmony_ci	  Say Y if you want to support video devices and functionality such as
4648c2ecf20Sopenharmony_ci	  video encode and decode.
4658c2ecf20Sopenharmony_ci
4668c2ecf20Sopenharmony_ciconfig SM_VIDEOCC_8250
4678c2ecf20Sopenharmony_ci	tristate "SM8250 Video Clock Controller"
4688c2ecf20Sopenharmony_ci	select SDM_GCC_8250
4698c2ecf20Sopenharmony_ci	select QCOM_GDSC
4708c2ecf20Sopenharmony_ci	help
4718c2ecf20Sopenharmony_ci	  Support for the video clock controller on SM8250 devices.
4728c2ecf20Sopenharmony_ci	  Say Y if you want to support video devices and functionality such as
4738c2ecf20Sopenharmony_ci	  video encode and decode.
4748c2ecf20Sopenharmony_ci
4758c2ecf20Sopenharmony_ciconfig SPMI_PMIC_CLKDIV
4768c2ecf20Sopenharmony_ci	tristate "SPMI PMIC clkdiv Support"
4778c2ecf20Sopenharmony_ci	depends on SPMI || COMPILE_TEST
4788c2ecf20Sopenharmony_ci	help
4798c2ecf20Sopenharmony_ci	  This driver supports the clkdiv functionality on the Qualcomm
4808c2ecf20Sopenharmony_ci	  Technologies, Inc. SPMI PMIC. It configures the frequency of
4818c2ecf20Sopenharmony_ci	  clkdiv outputs of the PMIC. These clocks are typically wired
4828c2ecf20Sopenharmony_ci	  through alternate functions on GPIO pins.
4838c2ecf20Sopenharmony_ci
4848c2ecf20Sopenharmony_ciconfig QCOM_HFPLL
4858c2ecf20Sopenharmony_ci	tristate "High-Frequency PLL (HFPLL) Clock Controller"
4868c2ecf20Sopenharmony_ci	help
4878c2ecf20Sopenharmony_ci	  Support for the high-frequency PLLs present on Qualcomm devices.
4888c2ecf20Sopenharmony_ci	  Say Y if you want to support CPU frequency scaling on devices
4898c2ecf20Sopenharmony_ci	  such as MSM8974, APQ8084, etc.
4908c2ecf20Sopenharmony_ci
4918c2ecf20Sopenharmony_ciconfig KPSS_XCC
4928c2ecf20Sopenharmony_ci	tristate "KPSS Clock Controller"
4938c2ecf20Sopenharmony_ci	help
4948c2ecf20Sopenharmony_ci	  Support for the Krait ACC and GCC clock controllers. Say Y
4958c2ecf20Sopenharmony_ci	  if you want to support CPU frequency scaling on devices such
4968c2ecf20Sopenharmony_ci	  as MSM8960, APQ8064, etc.
4978c2ecf20Sopenharmony_ci
4988c2ecf20Sopenharmony_ciconfig KRAITCC
4998c2ecf20Sopenharmony_ci	tristate "Krait Clock Controller"
5008c2ecf20Sopenharmony_ci	depends on ARM
5018c2ecf20Sopenharmony_ci	select KRAIT_CLOCKS
5028c2ecf20Sopenharmony_ci	help
5038c2ecf20Sopenharmony_ci	  Support for the Krait CPU clocks on Qualcomm devices.
5048c2ecf20Sopenharmony_ci	  Say Y if you want to support CPU frequency scaling.
5058c2ecf20Sopenharmony_ci
5068c2ecf20Sopenharmony_ciendif
507