2019-05-19 12:07:45 +00:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
2018-08-14 12:12:26 +00:00
|
|
|
config KRAIT_CLOCKS
|
|
|
|
bool
|
|
|
|
select KRAIT_L2_ACCESSORS
|
|
|
|
|
2015-10-08 17:59:32 +00:00
|
|
|
config QCOM_GDSC
|
|
|
|
bool
|
|
|
|
select PM_GENERIC_DOMAINS if PM
|
|
|
|
|
2016-11-02 15:56:56 +00:00
|
|
|
config QCOM_RPMCC
|
|
|
|
bool
|
|
|
|
|
2018-11-21 20:39:44 +00:00
|
|
|
menuconfig COMMON_CLK_QCOM
|
2014-01-15 18:47:23 +00:00
|
|
|
tristate "Support for Qualcomm's clock controllers"
|
|
|
|
depends on OF
|
2015-04-07 12:12:04 +00:00
|
|
|
depends on ARCH_QCOM || COMPILE_TEST
|
2014-01-15 18:47:23 +00:00
|
|
|
select REGMAP_MMIO
|
2014-01-15 18:47:27 +00:00
|
|
|
select RESET_CONTROLLER
|
2014-01-15 18:47:28 +00:00
|
|
|
|
2018-11-21 20:39:44 +00:00
|
|
|
if COMMON_CLK_QCOM
|
|
|
|
|
2017-12-05 15:46:58 +00:00
|
|
|
config QCOM_A53PLL
|
|
|
|
tristate "MSM8916 A53 PLL"
|
|
|
|
help
|
|
|
|
Support for the A53 PLL on MSM8916 devices. It provides
|
|
|
|
the CPU with frequencies above 1GHz.
|
|
|
|
Say Y if you want to support higher CPU frequencies on MSM8916
|
|
|
|
devices.
|
|
|
|
|
2017-12-05 15:47:01 +00:00
|
|
|
config QCOM_CLK_APCS_MSM8916
|
|
|
|
tristate "MSM8916 APCS Clock Controller"
|
|
|
|
depends on QCOM_APCS_IPC || COMPILE_TEST
|
|
|
|
help
|
|
|
|
Support for the APCS Clock Controller on msm8916 devices. The
|
|
|
|
APCS is managing the mux and divider which feeds the CPUs.
|
|
|
|
Say Y if you want to support CPU frequency scaling on devices
|
|
|
|
such as msm8916.
|
|
|
|
|
2016-11-02 15:56:57 +00:00
|
|
|
config QCOM_CLK_RPM
|
|
|
|
tristate "RPM based Clock Controller"
|
2018-11-21 20:39:44 +00:00
|
|
|
depends on MFD_QCOM_RPM
|
2016-11-02 15:56:57 +00:00
|
|
|
select QCOM_RPMCC
|
|
|
|
help
|
|
|
|
The RPM (Resource Power Manager) is a dedicated hardware engine for
|
|
|
|
managing the shared SoC resources in order to keep the lowest power
|
|
|
|
profile. It communicates with other hardware subsystems via shared
|
|
|
|
memory and accepts clock requests, aggregates the requests and turns
|
|
|
|
the clocks on/off or scales them on demand.
|
|
|
|
Say Y if you want to support the clocks exposed by the RPM on
|
|
|
|
platforms such as apq8064, msm8660, msm8960 etc.
|
|
|
|
|
2016-11-02 15:56:56 +00:00
|
|
|
config QCOM_CLK_SMD_RPM
|
|
|
|
tristate "RPM over SMD based Clock Controller"
|
2018-11-21 20:39:44 +00:00
|
|
|
depends on QCOM_SMD_RPM
|
2016-11-02 15:56:56 +00:00
|
|
|
select QCOM_RPMCC
|
|
|
|
help
|
|
|
|
The RPM (Resource Power Manager) is a dedicated hardware engine for
|
|
|
|
managing the shared SoC resources in order to keep the lowest power
|
|
|
|
profile. It communicates with other hardware subsystems via shared
|
|
|
|
memory and accepts clock requests, aggregates the requests and turns
|
|
|
|
the clocks on/off or scales them on demand.
|
|
|
|
Say Y if you want to support the clocks exposed by the RPM on
|
|
|
|
platforms such as apq8016, apq8084, msm8974 etc.
|
|
|
|
|
2018-05-09 05:56:07 +00:00
|
|
|
config QCOM_CLK_RPMH
|
|
|
|
tristate "RPMh Clock Driver"
|
2018-11-21 20:39:44 +00:00
|
|
|
depends on QCOM_RPMH
|
2018-05-09 05:56:07 +00:00
|
|
|
help
|
|
|
|
RPMh manages shared resources on some Qualcomm Technologies, Inc.
|
|
|
|
SoCs. It accepts requests from other hardware subsystems via RSC.
|
|
|
|
Say Y if you want to support the clocks exposed by RPMh on
|
|
|
|
platforms such as SDM845.
|
|
|
|
|
2014-06-03 14:24:09 +00:00
|
|
|
config APQ_GCC_8084
|
|
|
|
tristate "APQ8084 Global Clock Controller"
|
2015-08-06 10:37:49 +00:00
|
|
|
select QCOM_GDSC
|
2014-06-03 14:24:09 +00:00
|
|
|
help
|
|
|
|
Support for the global clock controller on apq8084 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, SD/eMMC, SATA, PCIe, etc.
|
|
|
|
|
2014-06-12 16:41:42 +00:00
|
|
|
config APQ_MMCC_8084
|
|
|
|
tristate "APQ8084 Multimedia Clock Controller"
|
|
|
|
select APQ_GCC_8084
|
2015-08-06 10:37:50 +00:00
|
|
|
select QCOM_GDSC
|
2014-06-12 16:41:42 +00:00
|
|
|
help
|
|
|
|
Support for the multimedia clock controller on apq8084 devices.
|
|
|
|
Say Y if you want to support multimedia devices such as display,
|
|
|
|
graphics, video encode/decode, camera, etc.
|
|
|
|
|
2015-11-19 23:19:29 +00:00
|
|
|
config IPQ_GCC_4019
|
|
|
|
tristate "IPQ4019 Global Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the global clock controller on ipq4019 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, SD/eMMC, etc.
|
|
|
|
|
2014-06-17 19:46:51 +00:00
|
|
|
config IPQ_GCC_806X
|
|
|
|
tristate "IPQ806x Global Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the global clock controller on ipq806x devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, SD/eMMC, etc.
|
|
|
|
|
2015-01-20 02:05:33 +00:00
|
|
|
config IPQ_LCC_806X
|
|
|
|
tristate "IPQ806x LPASS Clock Controller"
|
|
|
|
select IPQ_GCC_806X
|
|
|
|
help
|
|
|
|
Support for the LPASS clock controller on ipq806x devices.
|
|
|
|
Say Y if you want to use audio devices such as i2s, pcm,
|
|
|
|
S/PDIF, etc.
|
|
|
|
|
2017-06-09 09:41:57 +00:00
|
|
|
config IPQ_GCC_8074
|
|
|
|
tristate "IPQ8074 Global Clock Controller"
|
|
|
|
help
|
|
|
|
Support for global clock controller on ipq8074 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, SD/eMMC, etc. Select this for the root clock
|
|
|
|
of ipq8074.
|
|
|
|
|
2014-01-15 18:47:32 +00:00
|
|
|
config MSM_GCC_8660
|
|
|
|
tristate "MSM8660 Global Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the global clock controller on msm8660 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, SD/eMMC, etc.
|
|
|
|
|
2015-03-18 14:08:22 +00:00
|
|
|
config MSM_GCC_8916
|
|
|
|
tristate "MSM8916 Global Clock Controller"
|
2015-08-06 10:37:46 +00:00
|
|
|
select QCOM_GDSC
|
2015-03-18 14:08:22 +00:00
|
|
|
help
|
|
|
|
Support for the global clock controller on msm8916 devices.
|
|
|
|
Say Y if you want to use devices such as UART, SPI i2c, USB,
|
|
|
|
SD/eMMC, display, graphics, camera etc.
|
|
|
|
|
2014-01-15 18:47:28 +00:00
|
|
|
config MSM_GCC_8960
|
2014-04-04 16:31:29 +00:00
|
|
|
tristate "APQ8064/MSM8960 Global Clock Controller"
|
2014-01-15 18:47:28 +00:00
|
|
|
help
|
2014-04-04 16:31:29 +00:00
|
|
|
Support for the global clock controller on apq8064/msm8960 devices.
|
2014-01-15 18:47:28 +00:00
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, SD/eMMC, SATA, PCIe, etc.
|
2014-01-15 18:47:29 +00:00
|
|
|
|
2015-01-20 02:05:34 +00:00
|
|
|
config MSM_LCC_8960
|
|
|
|
tristate "APQ8064/MSM8960 LPASS Clock Controller"
|
|
|
|
select MSM_GCC_8960
|
|
|
|
help
|
|
|
|
Support for the LPASS clock controller on apq8064/msm8960 devices.
|
|
|
|
Say Y if you want to use audio devices such as i2s, pcm,
|
|
|
|
SLIMBus, etc.
|
|
|
|
|
2016-08-11 12:48:04 +00:00
|
|
|
config MDM_GCC_9615
|
|
|
|
tristate "MDM9615 Global Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the global clock controller on mdm9615 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, SD/eMMC, etc.
|
|
|
|
|
|
|
|
config MDM_LCC_9615
|
|
|
|
tristate "MDM9615 LPASS Clock Controller"
|
|
|
|
select MDM_GCC_9615
|
|
|
|
help
|
|
|
|
Support for the LPASS clock controller on mdm9615 devices.
|
|
|
|
Say Y if you want to use audio devices such as i2s, pcm,
|
|
|
|
SLIMBus, etc.
|
|
|
|
|
2014-01-15 18:47:29 +00:00
|
|
|
config MSM_MMCC_8960
|
|
|
|
tristate "MSM8960 Multimedia Clock Controller"
|
|
|
|
select MSM_GCC_8960
|
|
|
|
help
|
|
|
|
Support for the multimedia clock controller on msm8960 devices.
|
|
|
|
Say Y if you want to support multimedia devices such as display,
|
|
|
|
graphics, video encode/decode, camera, etc.
|
2014-01-15 18:47:30 +00:00
|
|
|
|
|
|
|
config MSM_GCC_8974
|
|
|
|
tristate "MSM8974 Global Clock Controller"
|
2015-08-06 10:37:47 +00:00
|
|
|
select QCOM_GDSC
|
2014-01-15 18:47:30 +00:00
|
|
|
help
|
|
|
|
Support for the global clock controller on msm8974 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, SD/eMMC, SATA, PCIe, etc.
|
2014-01-15 18:47:31 +00:00
|
|
|
|
|
|
|
config MSM_MMCC_8974
|
|
|
|
tristate "MSM8974 Multimedia Clock Controller"
|
|
|
|
select MSM_GCC_8974
|
2015-08-06 10:37:48 +00:00
|
|
|
select QCOM_GDSC
|
2014-01-15 18:47:31 +00:00
|
|
|
help
|
|
|
|
Support for the multimedia clock controller on msm8974 devices.
|
|
|
|
Say Y if you want to support multimedia devices such as display,
|
|
|
|
graphics, video encode/decode, camera, etc.
|
2015-12-01 01:31:40 +00:00
|
|
|
|
2016-11-04 20:56:35 +00:00
|
|
|
config MSM_GCC_8994
|
|
|
|
tristate "MSM8994 Global Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the global clock controller on msm8994 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, UFS, SD/eMMC, PCIe, etc.
|
|
|
|
|
2015-12-01 01:31:40 +00:00
|
|
|
config MSM_GCC_8996
|
|
|
|
tristate "MSM8996 Global Clock Controller"
|
2016-08-25 11:28:07 +00:00
|
|
|
select QCOM_GDSC
|
2015-12-01 01:31:40 +00:00
|
|
|
help
|
|
|
|
Support for the global clock controller on msm8996 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, UFS, SD/eMMC, PCIe, etc.
|
2015-12-01 01:31:42 +00:00
|
|
|
|
|
|
|
config MSM_MMCC_8996
|
|
|
|
tristate "MSM8996 Multimedia Clock Controller"
|
|
|
|
select MSM_GCC_8996
|
2016-08-25 11:28:07 +00:00
|
|
|
select QCOM_GDSC
|
2015-12-01 01:31:42 +00:00
|
|
|
help
|
|
|
|
Support for the multimedia clock controller on msm8996 devices.
|
|
|
|
Say Y if you want to support multimedia devices such as display,
|
|
|
|
graphics, video encode/decode, camera, etc.
|
2017-11-21 09:11:04 +00:00
|
|
|
|
2018-03-27 15:25:18 +00:00
|
|
|
config MSM_GCC_8998
|
|
|
|
tristate "MSM8998 Global Clock Controller"
|
2019-01-11 13:37:43 +00:00
|
|
|
select QCOM_GDSC
|
2018-03-27 15:25:18 +00:00
|
|
|
help
|
|
|
|
Support for the global clock controller on msm8998 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2c, USB, UFS, SD/eMMC, PCIe, etc.
|
|
|
|
|
2018-10-10 14:51:38 +00:00
|
|
|
config QCS_GCC_404
|
|
|
|
tristate "QCS404 Global Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the global clock controller on QCS404 devices.
|
|
|
|
Say Y if you want to use multimedia devices or peripheral
|
|
|
|
devices such as UART, SPI, I2C, USB, SD/eMMC, PCIe etc.
|
|
|
|
|
2018-08-08 10:47:19 +00:00
|
|
|
config SDM_CAMCC_845
|
|
|
|
tristate "SDM845 Camera Clock Controller"
|
|
|
|
select SDM_GCC_845
|
|
|
|
help
|
|
|
|
Support for the camera clock controller on SDM845 devices.
|
|
|
|
Say Y if you want to support camera devices and camera functionality.
|
|
|
|
|
2018-09-25 17:35:58 +00:00
|
|
|
config SDM_GCC_660
|
|
|
|
tristate "SDM660 Global Clock Controller"
|
|
|
|
select QCOM_GDSC
|
|
|
|
help
|
|
|
|
Support for the global clock controller on SDM660 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
|
|
|
i2C, USB, UFS, SDDC, PCIe, etc.
|
|
|
|
|
2019-03-06 17:47:58 +00:00
|
|
|
config QCS_TURING_404
|
|
|
|
tristate "QCS404 Turing Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the Turing Clock Controller on QCS404, provides clocks
|
|
|
|
and resets for the Turing subsystem.
|
|
|
|
|
2018-05-07 10:50:20 +00:00
|
|
|
config SDM_GCC_845
|
|
|
|
tristate "SDM845 Global Clock Controller"
|
|
|
|
select QCOM_GDSC
|
|
|
|
help
|
2018-06-04 19:34:51 +00:00
|
|
|
Support for the global clock controller on SDM845 devices.
|
2018-05-07 10:50:20 +00:00
|
|
|
Say Y if you want to use peripheral devices such as UART, SPI,
|
2018-06-04 19:34:51 +00:00
|
|
|
i2C, USB, UFS, SDDC, PCIe, etc.
|
2018-05-07 10:50:20 +00:00
|
|
|
|
2018-11-25 04:36:08 +00:00
|
|
|
config SDM_GPUCC_845
|
|
|
|
tristate "SDM845 Graphics Clock Controller"
|
|
|
|
select SDM_GCC_845
|
|
|
|
help
|
|
|
|
Support for the graphics clock controller on SDM845 devices.
|
|
|
|
Say Y if you want to support graphics controller devices and
|
|
|
|
functionality such as 3D graphics.
|
|
|
|
|
2018-05-09 11:32:31 +00:00
|
|
|
config SDM_VIDEOCC_845
|
|
|
|
tristate "SDM845 Video Clock Controller"
|
|
|
|
select SDM_GCC_845
|
|
|
|
select QCOM_GDSC
|
|
|
|
help
|
2018-06-04 19:34:51 +00:00
|
|
|
Support for the video clock controller on SDM845 devices.
|
2018-05-09 11:32:31 +00:00
|
|
|
Say Y if you want to support video devices and functionality such as
|
|
|
|
video encode and decode.
|
|
|
|
|
2018-07-23 10:54:35 +00:00
|
|
|
config SDM_DISPCC_845
|
|
|
|
tristate "SDM845 Display Clock Controller"
|
|
|
|
select SDM_GCC_845
|
|
|
|
help
|
|
|
|
Support for the display clock controller on Qualcomm Technologies, Inc
|
|
|
|
SDM845 devices.
|
|
|
|
Say Y if you want to support display devices and functionality such as
|
|
|
|
splash screen.
|
|
|
|
|
2018-11-30 18:21:29 +00:00
|
|
|
config SDM_LPASSCC_845
|
|
|
|
tristate "SDM845 Low Power Audio Subsystem (LPAAS) Clock Controller"
|
|
|
|
select SDM_GCC_845
|
|
|
|
help
|
|
|
|
Support for the LPASS clock controller on SDM845 devices.
|
|
|
|
Say Y if you want to use the LPASS branch clocks of the LPASS clock
|
|
|
|
controller to reset the LPASS subsystem.
|
|
|
|
|
2019-07-22 07:43:48 +00:00
|
|
|
config SM_GCC_8150
|
|
|
|
tristate "SM8150 Global Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the global clock controller on SM8150 devices.
|
|
|
|
Say Y if you want to use peripheral devices such as UART,
|
|
|
|
SPI, I2C, USB, SD/UFS, PCIe etc.
|
|
|
|
|
2017-11-21 09:11:04 +00:00
|
|
|
config SPMI_PMIC_CLKDIV
|
|
|
|
tristate "SPMI PMIC clkdiv Support"
|
2018-11-21 20:39:44 +00:00
|
|
|
depends on SPMI || COMPILE_TEST
|
2017-11-21 09:11:04 +00:00
|
|
|
help
|
|
|
|
This driver supports the clkdiv functionality on the Qualcomm
|
|
|
|
Technologies, Inc. SPMI PMIC. It configures the frequency of
|
|
|
|
clkdiv outputs of the PMIC. These clocks are typically wired
|
|
|
|
through alternate functions on GPIO pins.
|
2018-08-14 12:12:22 +00:00
|
|
|
|
|
|
|
config QCOM_HFPLL
|
|
|
|
tristate "High-Frequency PLL (HFPLL) Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the high-frequency PLLs present on Qualcomm devices.
|
|
|
|
Say Y if you want to support CPU frequency scaling on devices
|
|
|
|
such as MSM8974, APQ8084, etc.
|
2018-08-14 12:12:27 +00:00
|
|
|
|
|
|
|
config KPSS_XCC
|
|
|
|
tristate "KPSS Clock Controller"
|
|
|
|
help
|
|
|
|
Support for the Krait ACC and GCC clock controllers. Say Y
|
|
|
|
if you want to support CPU frequency scaling on devices such
|
|
|
|
as MSM8960, APQ8064, etc.
|
2018-08-14 12:12:29 +00:00
|
|
|
|
|
|
|
config KRAITCC
|
|
|
|
tristate "Krait Clock Controller"
|
2018-11-21 20:39:44 +00:00
|
|
|
depends on ARM
|
2018-08-14 12:12:29 +00:00
|
|
|
select KRAIT_CLOCKS
|
|
|
|
help
|
|
|
|
Support for the Krait CPU clocks on Qualcomm devices.
|
|
|
|
Say Y if you want to support CPU frequency scaling.
|
2018-11-21 20:39:44 +00:00
|
|
|
|
|
|
|
endif
|