Hi Jon,

comments inline.

On 15-10-22 12:25 PM, Jon Mason wrote:
Make the clocks visible options that can be selected by anyone.  This
avoids the problems of:
  1) Select is a reverse dependency and is hard for people to understand
     and can sometimes be a pain to track down
This doesn't make any sense to me - there are many selects in the system and this is one of them.
  2) Build coverage goes down because configs are hidden
  3) Code bloat

Patch suggested by Stephen Boyd

Signed-off-by: Jon Mason <jonma...@broadcom.com>
---
  arch/arm/mach-bcm/Kconfig |  1 -
  drivers/clk/bcm/Kconfig   | 35 ++++++++++++++++++++++++++++++++++-
  drivers/clk/bcm/Makefile  |  7 +++----
  3 files changed, 37 insertions(+), 6 deletions(-)

diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig
index 679798b..cacaaec 100644
--- a/arch/arm/mach-bcm/Kconfig
+++ b/arch/arm/mach-bcm/Kconfig
@@ -14,7 +14,6 @@ config ARCH_BCM_IPROC
        select HAVE_ARM_SCU if SMP
        select HAVE_ARM_TWD if SMP
        select ARM_GLOBAL_TIMER
-       select COMMON_CLK_IPROC
Please leave as is
        select CLKSRC_MMIO
        select ARCH_REQUIRE_GPIOLIB
        select ARM_AMBA
diff --git a/drivers/clk/bcm/Kconfig b/drivers/clk/bcm/Kconfig
index 46ee475..0352ccf 100644
--- a/drivers/clk/bcm/Kconfig
+++ b/drivers/clk/bcm/Kconfig
@@ -9,8 +9,41 @@ config CLK_BCM_KONA
          in the BCM281xx and BCM21664 families.

  config COMMON_CLK_IPROC
-       bool
+       bool "Broadcom iProc clock support"
Please leave as is
+       depends on ARCH_BCM_IPROC
        depends on COMMON_CLK
+       default ARCH_BCM_IPROC
        help
          Enable common clock framework support for Broadcom SoCs
          based on the iProc architecture
+
+if COMMON_CLK_IPROC
+
+comment "Broadcom iProc clocks"
+
+config CLK_BCM_CYGNUS
not needed
+       bool "Broadcom Cygnus clock support"
+       depends on COMMON_CLK_IPROC
+       depends on ARCH_BCM_CYGNUS
+       default ARCH_BCM_CYGNUS
+       help
+         Enable common clock framework support for the Broadcom Cygnus SoC
+
+config CLK_BCM_NSP
not needed
+       bool "Broadcom Northstar/Northstar Plus clock support"
+       depends on COMMON_CLK_IPROC
+       depends on ARCH_BCM_5301X || ARCH_BCM_NSP
+       default ARCH_BCM_5301X || ARCH_BCM_NSP
+       help
+         Enable common clock framework support for the Broadcom Northstar and
+         Northstar Plus SoCs
+
+config CLK_BCM_NS2
+       bool "Broadcom Northstar 2 clock support"
+       depends on ARM64
|| COMPILE_TEST
+       depends on COMMON_CLK_IPROC
select COMMON_CLK_IPROC
+       default ARCH_BCM_IPROC
+       help
+         Enable common clock framework support for the Broadcom Northstar 2 SoC
+
+endif
diff --git a/drivers/clk/bcm/Makefile b/drivers/clk/bcm/Makefile
index 2d1cbc5..05d5830 100644
--- a/drivers/clk/bcm/Makefile
+++ b/drivers/clk/bcm/Makefile
@@ -3,7 +3,6 @@ obj-$(CONFIG_CLK_BCM_KONA)      += clk-kona-setup.o
  obj-$(CONFIG_CLK_BCM_KONA)    += clk-bcm281xx.o
  obj-$(CONFIG_CLK_BCM_KONA)    += clk-bcm21664.o
  obj-$(CONFIG_COMMON_CLK_IPROC)        += clk-iproc-armpll.o clk-iproc-pll.o 
clk-iproc-asiu.o
-obj-$(CONFIG_COMMON_CLK_IPROC) += clk-ns2.o
yes, change this one
-obj-$(CONFIG_ARCH_BCM_CYGNUS)  += clk-cygnus.o
you can leave this
-obj-$(CONFIG_ARCH_BCM_NSP)     += clk-nsp.o
you can leave this
-obj-$(CONFIG_ARCH_BCM_5301X)   += clk-nsp.o
and this
+obj-$(CONFIG_CLK_BCM_CYGNUS)   += clk-cygnus.o
no
+obj-$(CONFIG_CLK_BCM_NSP)      += clk-nsp.o
no
+obj-$(CONFIG_CLK_BCM_NS2)      += clk-ns2.o
yes needed


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to