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
 
 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
 
 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
 
 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
 
 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.
 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,
        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,
 
 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,
        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,
        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,
 
 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.
 
 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