arm: lpc32xx: add CONFIG_ARCH_LPC32XX build option
authorVladimir Zapolskiy <vz@mleia.com>
Mon, 17 Sep 2018 18:43:03 +0000 (21:43 +0300)
committerTom Rini <trini@konsulko.com>
Fri, 19 Oct 2018 16:56:58 +0000 (12:56 -0400)
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@mleia.com>
arch/arm/Kconfig
arch/arm/cpu/arm926ejs/lpc32xx/Kconfig [new file with mode: 0644]
board/timll/devkit3250/Kconfig
board/work-microwave/work_92105/Kconfig
configs/devkit3250_defconfig
configs/work_92105_defconfig

index c7168e0..2415ae8 100644 (file)
@@ -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
@@ -1400,6 +1400,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"
@@ -1518,11 +1520,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 (file)
index 0000000..986ad73
--- /dev/null
@@ -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
index e3bd456..5129c2d 100644 (file)
@@ -6,9 +6,6 @@ config SYS_BOARD
 config SYS_VENDOR
        default "timll"
 
-config SYS_SOC
-       default "lpc32xx"
-
 config SYS_CONFIG_NAME
        default "devkit3250"
 
index 4bc34ed..32632f5 100644 (file)
@@ -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"
 
index cdb4bd5..f0a7997 100644 (file)
@@ -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
index 7504077..105e51a 100644 (file)
@@ -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