Merge branch 'clk-qcom-sdm845-lpass' into clk-next
authorStephen Boyd <sboyd@kernel.org>
Fri, 14 Dec 2018 21:27:39 +0000 (13:27 -0800)
committerStephen Boyd <sboyd@kernel.org>
Fri, 14 Dec 2018 21:27:53 +0000 (13:27 -0800)
 - Qualcomm SDM845 audio subsystem clks

* clk-qcom-sdm845-lpass:
  clk: qcom: Add lpass clock controller driver for SDM845
  dt-bindings: clock: Introduce QCOM LPASS clock bindings
  dt-bindings: clock: Update GCC bindings for protected-clocks

1  2 
drivers/clk/qcom/Kconfig
drivers/clk/qcom/Makefile

diff --combined drivers/clk/qcom/Kconfig
@@@ -9,17 -9,16 +9,17 @@@ config QCOM_GDS
  config QCOM_RPMCC
        bool
  
 -config COMMON_CLK_QCOM
 +menuconfig COMMON_CLK_QCOM
        tristate "Support for Qualcomm's clock controllers"
        depends on OF
        depends on ARCH_QCOM || COMPILE_TEST
        select REGMAP_MMIO
        select RESET_CONTROLLER
  
 +if COMMON_CLK_QCOM
 +
  config QCOM_A53PLL
        tristate "MSM8916 A53 PLL"
 -      depends on COMMON_CLK_QCOM
        default ARCH_QCOM
        help
          Support for the A53 PLL on MSM8916 devices. It provides
@@@ -29,6 -28,7 +29,6 @@@
  
  config QCOM_CLK_APCS_MSM8916
        tristate "MSM8916 APCS Clock Controller"
 -      depends on COMMON_CLK_QCOM
        depends on QCOM_APCS_IPC || COMPILE_TEST
        default ARCH_QCOM
        help
@@@ -39,7 -39,7 +39,7 @@@
  
  config QCOM_CLK_RPM
        tristate "RPM based Clock Controller"
 -      depends on COMMON_CLK_QCOM && MFD_QCOM_RPM
 +      depends on MFD_QCOM_RPM
        select QCOM_RPMCC
        help
          The RPM (Resource Power Manager) is a dedicated hardware engine for
@@@ -52,7 -52,7 +52,7 @@@
  
  config QCOM_CLK_SMD_RPM
        tristate "RPM over SMD based Clock Controller"
 -      depends on COMMON_CLK_QCOM && QCOM_SMD_RPM
 +      depends on QCOM_SMD_RPM
        select QCOM_RPMCC
        help
          The RPM (Resource Power Manager) is a dedicated hardware engine for
@@@ -65,7 -65,7 +65,7 @@@
  
  config QCOM_CLK_RPMH
        tristate "RPMh Clock Driver"
 -      depends on COMMON_CLK_QCOM && QCOM_RPMH
 +      depends on QCOM_RPMH
        help
         RPMh manages shared resources on some Qualcomm Technologies, Inc.
         SoCs. It accepts requests from other hardware subsystems via RSC.
@@@ -75,6 -75,7 +75,6 @@@
  config APQ_GCC_8084
        tristate "APQ8084 Global Clock Controller"
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on apq8084 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
@@@ -84,6 -85,7 +84,6 @@@ config APQ_MMCC_808
        tristate "APQ8084 Multimedia Clock Controller"
        select APQ_GCC_8084
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the multimedia clock controller on apq8084 devices.
          Say Y if you want to support multimedia devices such as display,
@@@ -91,6 -93,7 +91,6 @@@
  
  config IPQ_GCC_4019
        tristate "IPQ4019 Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on ipq4019 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  
  config IPQ_GCC_806X
        tristate "IPQ806x Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on ipq806x devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  config IPQ_LCC_806X
        tristate "IPQ806x LPASS Clock Controller"
        select IPQ_GCC_806X
 -      depends on COMMON_CLK_QCOM
        help
          Support for the LPASS clock controller on ipq806x devices.
          Say Y if you want to use audio devices such as i2s, pcm,
  
  config IPQ_GCC_8074
        tristate "IPQ8074 Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for global clock controller on ipq8074 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  
  config MSM_GCC_8660
        tristate "MSM8660 Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on msm8660 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  config MSM_GCC_8916
        tristate "MSM8916 Global Clock Controller"
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on msm8916 devices.
          Say Y if you want to use devices such as UART, SPI i2c, USB,
  
  config MSM_GCC_8960
        tristate "APQ8064/MSM8960 Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on apq8064/msm8960 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  config MSM_LCC_8960
        tristate "APQ8064/MSM8960 LPASS Clock Controller"
        select MSM_GCC_8960
 -      depends on COMMON_CLK_QCOM
        help
          Support for the LPASS clock controller on apq8064/msm8960 devices.
          Say Y if you want to use audio devices such as i2s, pcm,
  
  config MDM_GCC_9615
        tristate "MDM9615 Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on mdm9615 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  config MDM_LCC_9615
        tristate "MDM9615 LPASS Clock Controller"
        select MDM_GCC_9615
 -      depends on COMMON_CLK_QCOM
        help
          Support for the LPASS clock controller on mdm9615 devices.
          Say Y if you want to use audio devices such as i2s, pcm,
  config MSM_MMCC_8960
        tristate "MSM8960 Multimedia Clock Controller"
        select MSM_GCC_8960
 -      depends on COMMON_CLK_QCOM
        help
          Support for the multimedia clock controller on msm8960 devices.
          Say Y if you want to support multimedia devices such as display,
  config MSM_GCC_8974
        tristate "MSM8974 Global Clock Controller"
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on msm8974 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
@@@ -184,6 -198,7 +184,6 @@@ config MSM_MMCC_897
        tristate "MSM8974 Multimedia Clock Controller"
        select MSM_GCC_8974
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the multimedia clock controller on msm8974 devices.
          Say Y if you want to support multimedia devices such as display,
  
  config MSM_GCC_8994
        tristate "MSM8994 Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on msm8994 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  config MSM_GCC_8996
        tristate "MSM8996 Global Clock Controller"
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on msm8996 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
@@@ -208,6 -225,7 +208,6 @@@ config MSM_MMCC_899
        tristate "MSM8996 Multimedia Clock Controller"
        select MSM_GCC_8996
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the multimedia clock controller on msm8996 devices.
          Say Y if you want to support multimedia devices such as display,
  
  config MSM_GCC_8998
        tristate "MSM8998 Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on msm8998 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  
  config QCS_GCC_404
        tristate "QCS404 Global Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on QCS404 devices.
          Say Y if you want to use multimedia devices or peripheral
  
  config SDM_CAMCC_845
        tristate "SDM845 Camera Clock Controller"
 -      depends on COMMON_CLK_QCOM
        select SDM_GCC_845
        help
          Support for the camera clock controller on SDM845 devices.
  config SDM_GCC_660
        tristate "SDM660 Global Clock Controller"
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on SDM660 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
  config SDM_GCC_845
        tristate "SDM845 Global Clock Controller"
        select QCOM_GDSC
 -      depends on COMMON_CLK_QCOM
        help
          Support for the global clock controller on SDM845 devices.
          Say Y if you want to use peripheral devices such as UART, SPI,
          i2C, USB, UFS, SDDC, PCIe, etc.
  
 +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.
 +
  config SDM_VIDEOCC_845
        tristate "SDM845 Video Clock Controller"
 -      depends on COMMON_CLK_QCOM
        select SDM_GCC_845
        select QCOM_GDSC
        help
  config SDM_DISPCC_845
        tristate "SDM845 Display Clock Controller"
        select SDM_GCC_845
 -      depends on COMMON_CLK_QCOM
        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.
  
 -      depends on COMMON_CLK_QCOM
+ 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.
  config SPMI_PMIC_CLKDIV
        tristate "SPMI PMIC clkdiv Support"
 -      depends on (COMMON_CLK_QCOM && SPMI) || COMPILE_TEST
 +      depends on SPMI || COMPILE_TEST
        help
          This driver supports the clkdiv functionality on the Qualcomm
          Technologies, Inc. SPMI PMIC. It configures the frequency of
  
  config QCOM_HFPLL
        tristate "High-Frequency PLL (HFPLL) Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the high-frequency PLLs present on Qualcomm devices.
          Say Y if you want to support CPU frequency scaling on devices
  
  config KPSS_XCC
        tristate "KPSS Clock Controller"
 -      depends on COMMON_CLK_QCOM
        help
          Support for the Krait ACC and GCC clock controllers. Say Y
          if you want to support CPU frequency scaling on devices such
  
  config KRAITCC
        tristate "Krait Clock Controller"
 -      depends on COMMON_CLK_QCOM && ARM
 +      depends on ARM
        select KRAIT_CLOCKS
        help
          Support for the Krait CPU clocks on Qualcomm devices.
          Say Y if you want to support CPU frequency scaling.
 +
 +endif
@@@ -46,7 -46,7 +46,8 @@@ obj-$(CONFIG_SDM_CAMCC_845) += camcc-sd
  obj-$(CONFIG_SDM_DISPCC_845) += dispcc-sdm845.o
  obj-$(CONFIG_SDM_GCC_660) += gcc-sdm660.o
  obj-$(CONFIG_SDM_GCC_845) += gcc-sdm845.o
 +obj-$(CONFIG_SDM_GPUCC_845) += gpucc-sdm845.o
+ obj-$(CONFIG_SDM_LPASSCC_845) += lpasscc-sdm845.o
  obj-$(CONFIG_SDM_VIDEOCC_845) += videocc-sdm845.o
  obj-$(CONFIG_SPMI_PMIC_CLKDIV) += clk-spmi-pmic-div.o
  obj-$(CONFIG_KPSS_XCC) += kpss-xcc.o