[U-Boot] [PATCH 1/2] arm: lpc32xx: add CONFIG_ARCH_LPC32XX build option

Vladimir Zapolskiy vz at mleia.com
Mon Sep 17 18:43:03 UTC 2018


The explicit arch specific build symbol allows to group supported
boards, generalize common config options and it will serve as
a dependency for platform only drivers.

Two related board defconfigs are resynced after the change.

Signed-off-by: Vladimir Zapolskiy <vz at mleia.com>
---
 arch/arm/Kconfig                        | 24 ++++++++++++------------
 arch/arm/cpu/arm926ejs/lpc32xx/Kconfig  | 20 ++++++++++++++++++++
 board/timll/devkit3250/Kconfig          |  3 ---
 board/work-microwave/work_92105/Kconfig |  3 ---
 configs/devkit3250_defconfig            |  6 +-----
 configs/work_92105_defconfig            | 11 ++++-------
 6 files changed, 37 insertions(+), 30 deletions(-)
 create mode 100644 arch/arm/cpu/arm926ejs/lpc32xx/Kconfig

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 0f8dd32bdd0e..921e6ea72326 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -443,16 +443,6 @@ config ARCH_MVEBU
 	select SPI
 	imply CMD_DM
 
-config TARGET_DEVKIT3250
-	bool "Support devkit3250"
-	select CPU_ARM926EJS
-	select SUPPORT_SPL
-
-config TARGET_WORK_92105
-	bool "Support work_92105"
-	select CPU_ARM926EJS
-	select SUPPORT_SPL
-
 config TARGET_APF27
 	bool "Support apf27"
 	select CPU_ARM926EJS
@@ -668,6 +658,16 @@ config ARCH_MESON
 	  targeted at media players and tablet computers. We currently
 	  support the S905 (GXBaby) 64-bit SoC.
 
+config ARCH_LPC32XX
+	bool "NXP LPC32xx platform"
+	select CPU_ARM926EJS
+	select DM
+	select DM_GPIO
+	select DM_SERIAL
+	select SPL_DM if SPL
+	select SUPPORT_SPL
+	imply CMD_DM
+
 config ARCH_MX8M
 	bool "NXP i.MX8M platform"
 	select ARM64
@@ -1389,6 +1389,8 @@ source "arch/arm/mach-keystone/Kconfig"
 
 source "arch/arm/mach-kirkwood/Kconfig"
 
+source "arch/arm/cpu/arm926ejs/lpc32xx/Kconfig"
+
 source "arch/arm/mach-mvebu/Kconfig"
 
 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
@@ -1505,11 +1507,9 @@ source "board/st/stv0991/Kconfig"
 source "board/tcl/sl50/Kconfig"
 source "board/ucRobotics/bubblegum_96/Kconfig"
 source "board/birdland/bav335x/Kconfig"
-source "board/timll/devkit3250/Kconfig"
 source "board/toradex/colibri_pxa270/Kconfig"
 source "board/vscom/baltos/Kconfig"
 source "board/woodburn/Kconfig"
-source "board/work-microwave/work_92105/Kconfig"
 source "board/xilinx/Kconfig"
 source "board/xilinx/zynq/Kconfig"
 source "board/xilinx/zynqmp/Kconfig"
diff --git a/arch/arm/cpu/arm926ejs/lpc32xx/Kconfig b/arch/arm/cpu/arm926ejs/lpc32xx/Kconfig
new file mode 100644
index 000000000000..986ad738ac14
--- /dev/null
+++ b/arch/arm/cpu/arm926ejs/lpc32xx/Kconfig
@@ -0,0 +1,20 @@
+if ARCH_LPC32XX
+
+config SYS_SOC
+	default "lpc32xx"
+
+choice
+	prompt "NXP LPC32xx board select"
+
+config TARGET_DEVKIT3250
+	bool "Timll DevKit3250"
+
+config TARGET_WORK_92105
+	bool "Work Microwave Work_92105"
+
+endchoice
+
+source "board/timll/devkit3250/Kconfig"
+source "board/work-microwave/work_92105/Kconfig"
+
+endif
diff --git a/board/timll/devkit3250/Kconfig b/board/timll/devkit3250/Kconfig
index e3bd4569d6e1..5129c2dcae54 100644
--- a/board/timll/devkit3250/Kconfig
+++ b/board/timll/devkit3250/Kconfig
@@ -6,9 +6,6 @@ config SYS_BOARD
 config SYS_VENDOR
 	default "timll"
 
-config SYS_SOC
-	default "lpc32xx"
-
 config SYS_CONFIG_NAME
 	default "devkit3250"
 
diff --git a/board/work-microwave/work_92105/Kconfig b/board/work-microwave/work_92105/Kconfig
index 4bc34ed01f0c..32632f5ab529 100644
--- a/board/work-microwave/work_92105/Kconfig
+++ b/board/work-microwave/work_92105/Kconfig
@@ -6,9 +6,6 @@ config SYS_BOARD
 config SYS_VENDOR
 	default "work-microwave"
 
-config SYS_SOC
-	default "lpc32xx"
-
 config SYS_CONFIG_NAME
 	default "work_92105"
 
diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig
index cdb4bd50d736..f0a7997db1dc 100644
--- a/configs/devkit3250_defconfig
+++ b/configs/devkit3250_defconfig
@@ -1,5 +1,5 @@
 CONFIG_ARM=y
-CONFIG_TARGET_DEVKIT3250=y
+CONFIG_ARCH_LPC32XX=y
 CONFIG_SYS_TEXT_BASE=0x83F00000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
@@ -29,9 +29,6 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_ENV_IS_IN_NAND=y
-CONFIG_DM=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NAND=y
@@ -40,7 +37,6 @@ CONFIG_SPL_NAND_SIMPLE=y
 CONFIG_PHYLIB=y
 CONFIG_PHY_ADDR_ENABLE=y
 CONFIG_PHY_ADDR=31
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_LPC32XX_SSP=y
diff --git a/configs/work_92105_defconfig b/configs/work_92105_defconfig
index 7504077558b6..105e51a40012 100644
--- a/configs/work_92105_defconfig
+++ b/configs/work_92105_defconfig
@@ -1,12 +1,13 @@
 CONFIG_ARM=y
-CONFIG_TARGET_WORK_92105=y
+CONFIG_ARCH_LPC32XX=y
 CONFIG_SYS_TEXT_BASE=0x80100000
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
-CONFIG_SPL_SERIAL_SUPPORT=y
-CONFIG_SPL=y
+CONFIG_TARGET_WORK_92105=y
 CONFIG_CMD_HD44760=y
 CONFIG_CMD_MAX6957=y
+CONFIG_SPL_SERIAL_SUPPORT=y
+CONFIG_SPL=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTARGS=y
@@ -32,13 +33,9 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_DOS_PARTITION=y
 CONFIG_ENV_IS_IN_NAND=y
-CONFIG_DM=y
-CONFIG_SPL_DM=y
-CONFIG_DM_GPIO=y
 # CONFIG_MMC is not set
 CONFIG_PHYLIB=y
 CONFIG_PHY_ADDR_ENABLE=y
-CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_LPC32XX_SSP=y
-- 
2.17.1



More information about the U-Boot mailing list