[U-Boot] [PATCH 2/5] ARM: uniphier: rework UniPhier SoC select in Kconfig

Masahiro Yamada yamada.masahiro at socionext.com
Fri Feb 26 10:59:42 CET 2016


The chains of "depends on <SoC_name>" in the current Kconfig is
clumsy.  The idea here is to allow users to choose a SoC group first
(SoC group consists of some SoCs that can coexist in one binary).
Then, allow to enable/disable each SoC support in the selected SoC
group.  This makes the Kconfig menu clearer.

Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
---

 arch/arm/mach-uniphier/Kconfig       | 62 ++++++++++++++++--------------------
 configs/uniphier_ld4_sld8_defconfig  |  3 +-
 configs/uniphier_pxs2_ld6b_defconfig |  4 +--
 3 files changed, 30 insertions(+), 39 deletions(-)

diff --git a/arch/arm/mach-uniphier/Kconfig b/arch/arm/mach-uniphier/Kconfig
index 03256be..e859ca3 100644
--- a/arch/arm/mach-uniphier/Kconfig
+++ b/arch/arm/mach-uniphier/Kconfig
@@ -3,54 +3,48 @@ if ARCH_UNIPHIER
 config SYS_CONFIG_NAME
 	default "uniphier"
 
+choice
+        prompt "UniPhier SoC select"
+        default ARCH_UNIPHIER_PH1_PRO4
+
 config ARCH_UNIPHIER_PH1_SLD3
 	bool "UniPhier PH1-sLD3 SoC"
-	help
-	  This enables support for UniPhier PH1-sLD3 SoC.
 
-config ARCH_UNIPHIER_PH1_LD4
-	bool "UniPhier PH1-LD4 SoC"
-	depends on !ARCH_UNIPHIER_PH1_SLD3
-	help
-	  This enables support for UniPhier PH1-LD4 SoC.
+config ARCH_UNIPHIER_LD4_SLD8
+	bool "UniPhier PH1-LD4/PH1-sLD8 SoC"
 
 config ARCH_UNIPHIER_PH1_PRO4
 	bool "UniPhier PH1-Pro4 SoC"
-	depends on !ARCH_UNIPHIER_PH1_SLD3 && \
-		   !ARCH_UNIPHIER_PH1_LD4 && \
-		   !ARCH_UNIPHIER_PH1_SLD8
-	help
-	  This enables support for UniPhier PH1-Pro4 SoC.
+
+config ARCH_UNIPHIER_PRO5_PXS2_LD6B
+	bool "UniPhier PH1-Pro5/ProXstream2/PH1-LD6b SoC"
+
+endchoice
+
+config ARCH_UNIPHIER_PH1_LD4
+	bool "Enable UniPhier PH1-LD4 SoC support"
+	depends on ARCH_UNIPHIER_LD4_SLD8
+	default y
 
 config ARCH_UNIPHIER_PH1_SLD8
-	bool "UniPhier PH1-sLD8 SoC"
-	depends on !ARCH_UNIPHIER_PH1_SLD3
-	help
-	  This enables support for UniPhier PH1-sLD8 SoC.
+	bool "Enable UniPhier PH1-sLD8 SoC support"
+	depends on ARCH_UNIPHIER_LD4_SLD8
+	default y
 
 config ARCH_UNIPHIER_PH1_PRO5
-	bool "UniPhier PH1-Pro5 SoC"
-	depends on !ARCH_UNIPHIER_PH1_SLD3 && \
-		   !ARCH_UNIPHIER_PH1_LD4 && \
-		   !ARCH_UNIPHIER_PH1_SLD8
-	help
-	  This enables support for UniPhier PH1-Pro5 SoC.
+	bool "Enable UniPhier PH1-Pro5 SoC support"
+	depends on ARCH_UNIPHIER_PRO5_PXS2_LD6B
+	default y
 
 config ARCH_UNIPHIER_PROXSTREAM2
-	bool "UniPhier ProXstream2 SoC"
-	depends on !ARCH_UNIPHIER_PH1_SLD3 && \
-		   !ARCH_UNIPHIER_PH1_LD4 && \
-		   !ARCH_UNIPHIER_PH1_SLD8
-	help
-	  This enables support for UniPhier ProXstream2 SoC.
+	bool "Enable UniPhier ProXstream2 SoC support"
+	depends on ARCH_UNIPHIER_PRO5_PXS2_LD6B
+	default y
 
 config ARCH_UNIPHIER_PH1_LD6B
-	bool "UniPhier PH1-LD6b SoC"
-	depends on !ARCH_UNIPHIER_PH1_SLD3 && \
-		   !ARCH_UNIPHIER_PH1_LD4 && \
-		   !ARCH_UNIPHIER_PH1_SLD8
-	help
-	  This enables support for UniPhier PH1-LD6b SoC.
+	bool "Enable UniPhier PH1-LD6b SoC support"
+	depends on ARCH_UNIPHIER_PRO5_PXS2_LD6B
+	default y
 
 config MICRO_SUPPORT_CARD
 	bool "Use Micro Support Card"
diff --git a/configs/uniphier_ld4_sld8_defconfig b/configs/uniphier_ld4_sld8_defconfig
index 892bccc..4d7afb8 100644
--- a/configs/uniphier_ld4_sld8_defconfig
+++ b/configs/uniphier_ld4_sld8_defconfig
@@ -1,8 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_UNIPHIER=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_ARCH_UNIPHIER_PH1_LD4=y
-CONFIG_ARCH_UNIPHIER_PH1_SLD8=y
+CONFIG_ARCH_UNIPHIER_LD4_SLD8=y
 CONFIG_MICRO_SUPPORT_CARD=y
 CONFIG_SYS_TEXT_BASE=0x84000000
 CONFIG_DEFAULT_DEVICE_TREE="uniphier-ph1-ld4-ref"
diff --git a/configs/uniphier_pxs2_ld6b_defconfig b/configs/uniphier_pxs2_ld6b_defconfig
index 10af9c8..4a8d70b 100644
--- a/configs/uniphier_pxs2_ld6b_defconfig
+++ b/configs/uniphier_pxs2_ld6b_defconfig
@@ -1,9 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_UNIPHIER=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_ARCH_UNIPHIER_PH1_PRO5=y
-CONFIG_ARCH_UNIPHIER_PROXSTREAM2=y
-CONFIG_ARCH_UNIPHIER_PH1_LD6B=y
+CONFIG_ARCH_UNIPHIER_PRO5_PXS2_LD6B=y
 CONFIG_MICRO_SUPPORT_CARD=y
 CONFIG_SYS_TEXT_BASE=0x84000000
 CONFIG_DEFAULT_DEVICE_TREE="uniphier-proxstream2-vodka"
-- 
1.9.1



More information about the U-Boot mailing list