[U-Boot] [PATCH 2/4] arm: imx: mx28: Move MX28 selection to Kconfig

Stefan Agner stefan at agner.ch
Mon Feb 5 21:33:14 UTC 2018


From: Stefan Agner <stefan.agner at toradex.com>

The motivation for moving MX28 selection to Kconfig is to be able
to better handle NAND MXS selection through Kconfig.

This selection method also aligns with the way other i.MX SoCs are
selected in U-Boot.

Signed-off-by: Stefan Agner <stefan.agner at toradex.com>
---

 arch/arm/Kconfig                        | 49 ++++-----------------------------
 arch/arm/mach-imx/mx2/Kconfig           | 43 +++++++++++++++++++++++++++++
 configs/apx4devkit_defconfig            |  3 +-
 configs/bg0900_defconfig                |  3 +-
 configs/m28evk_defconfig                |  3 +-
 configs/mx28evk_auart_console_defconfig |  3 +-
 configs/mx28evk_defconfig               |  3 +-
 configs/mx28evk_nand_defconfig          |  3 +-
 configs/mx28evk_spi_defconfig           |  3 +-
 configs/sc_sps_1_defconfig              |  3 +-
 configs/ts4600_defconfig                |  3 +-
 include/configs/apx4devkit.h            |  1 -
 include/configs/bg0900.h                |  3 --
 include/configs/m28evk.h                |  1 -
 include/configs/mx28evk.h               |  1 -
 include/configs/sc_sps_1.h              |  1 -
 include/configs/ts4600.h                |  3 --
 scripts/config_whitelist.txt            |  1 -
 18 files changed, 67 insertions(+), 63 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index b963a5102e..f4301f18ce 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -396,37 +396,6 @@ config TARGET_APF27
 	select CPU_ARM926EJS
 	select SUPPORT_SPL
 
-config TARGET_APX4DEVKIT
-	bool "Support apx4devkit"
-	select CPU_ARM926EJS
-	select SUPPORT_SPL
-	select PL011_SERIAL
-
-config TARGET_M28EVK
-	bool "Support m28evk"
-	select CPU_ARM926EJS
-	select SUPPORT_SPL
-	select PL011_SERIAL
-
-config TARGET_MX28EVK
-	bool "Support mx28evk"
-	select CPU_ARM926EJS
-	select SUPPORT_SPL
-	select BOARD_EARLY_INIT_F
-	select PL011_SERIAL
-
-config TARGET_BG0900
-	bool "Support bg0900"
-	select CPU_ARM926EJS
-	select SUPPORT_SPL
-	select PL011_SERIAL
-
-config TARGET_SC_SPS_1
-	bool "Support sc_sps_1"
-	select CPU_ARM926EJS
-	select SUPPORT_SPL
-	select PL011_SERIAL
-
 config ORION5X
 	bool "Marvell Orion"
 	select CPU_ARM926EJS
@@ -650,6 +619,12 @@ config ARCH_MX25
 	bool "NXP MX25"
 	select CPU_ARM926EJS
 
+config ARCH_MX28
+	bool "NXP i.MX28 family"
+	select CPU_ARM926EJS
+	select PL011_SERIAL
+	select SUPPORT_SPL
+
 config ARCH_MX7ULP
         bool "NXP MX7ULP"
         select CPU_V7
@@ -767,12 +742,6 @@ config ARCH_SUNXI
 	imply SPL_SERIAL_SUPPORT
 	imply USB_GADGET
 
-config TARGET_TS4600
-	bool "Support TS4600"
-	select CPU_ARM926EJS
-	select SUPPORT_SPL
-	select PL011_SERIAL
-
 config ARCH_VF610
 	bool "Freescale Vybrid"
 	select CPU_V7
@@ -1292,7 +1261,6 @@ source "arch/arm/cpu/armv8/Kconfig"
 
 source "arch/arm/mach-imx/Kconfig"
 
-source "board/aries/m28evk/Kconfig"
 source "board/bosch/shc/Kconfig"
 source "board/CarMediaLab/flea3/Kconfig"
 source "board/Marvell/aspenite/Kconfig"
@@ -1300,7 +1268,6 @@ source "board/Marvell/gplugd/Kconfig"
 source "board/armadeus/apf27/Kconfig"
 source "board/armltd/vexpress/Kconfig"
 source "board/armltd/vexpress64/Kconfig"
-source "board/bluegiga/apx4devkit/Kconfig"
 source "board/broadcom/bcm23550_w1d/Kconfig"
 source "board/broadcom/bcm28155_ap/Kconfig"
 source "board/broadcom/bcmcygnus/Kconfig"
@@ -1323,7 +1290,6 @@ source "board/freescale/ls1046ardb/Kconfig"
 source "board/freescale/ls1012aqds/Kconfig"
 source "board/freescale/ls1012ardb/Kconfig"
 source "board/freescale/ls1012afrdm/Kconfig"
-source "board/freescale/mx28evk/Kconfig"
 source "board/freescale/mx31ads/Kconfig"
 source "board/freescale/mx31pdk/Kconfig"
 source "board/freescale/mx35pdk/Kconfig"
@@ -1337,8 +1303,6 @@ source "board/hisilicon/poplar/Kconfig"
 source "board/imx31_phycore/Kconfig"
 source "board/isee/igep003x/Kconfig"
 source "board/phytec/pcm051/Kconfig"
-source "board/ppcag/bg0900/Kconfig"
-source "board/schulercontrol/sc_sps_1/Kconfig"
 source "board/silica/pengwyn/Kconfig"
 source "board/spear/spear300/Kconfig"
 source "board/spear/spear310/Kconfig"
@@ -1350,7 +1314,6 @@ source "board/tcl/sl50/Kconfig"
 source "board/birdland/bav335x/Kconfig"
 source "board/timll/devkit3250/Kconfig"
 source "board/toradex/colibri_pxa270/Kconfig"
-source "board/technologic/ts4600/Kconfig"
 source "board/vscom/baltos/Kconfig"
 source "board/woodburn/Kconfig"
 source "board/work-microwave/work_92105/Kconfig"
diff --git a/arch/arm/mach-imx/mx2/Kconfig b/arch/arm/mach-imx/mx2/Kconfig
index 7d70ee2971..e54eb55838 100644
--- a/arch/arm/mach-imx/mx2/Kconfig
+++ b/arch/arm/mach-imx/mx2/Kconfig
@@ -64,3 +64,46 @@ source "board/freescale/mx25pdk/Kconfig"
 source "board/syteco/zmx25/Kconfig"
 
 endif
+
+if ARCH_MX28
+
+config MX28
+	bool
+	default y
+
+choice
+	prompt "MX28 board select"
+	optional
+
+config TARGET_APX4DEVKIT
+	bool "Support apx4devkit"
+
+config TARGET_BG0900
+	bool "Support bg0900"
+
+config TARGET_M28EVK
+	bool "Support m28evk"
+
+config TARGET_MX28EVK
+	bool "Support mx28evk"
+	select BOARD_EARLY_INIT_F
+
+config TARGET_SC_SPS_1
+	bool "Support sc_sps_1"
+
+config TARGET_TS4600
+	bool "Support TS4600"
+
+endchoice
+
+config SYS_SOC
+	default "mxs"
+
+source "board/aries/m28evk/Kconfig"
+source "board/bluegiga/apx4devkit/Kconfig"
+source "board/freescale/mx28evk/Kconfig"
+source "board/ppcag/bg0900/Kconfig"
+source "board/schulercontrol/sc_sps_1/Kconfig"
+source "board/technologic/ts4600/Kconfig"
+
+endif
diff --git a/configs/apx4devkit_defconfig b/configs/apx4devkit_defconfig
index 47a4ee9e26..6d57bb2dbc 100644
--- a/configs/apx4devkit_defconfig
+++ b/configs/apx4devkit_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_APX4DEVKIT=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_APX4DEVKIT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_BOOTDELAY=1
 CONFIG_VERSION_VARIABLE=y
diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig
index 72616ae5e5..ed0448d55d 100644
--- a/configs/bg0900_defconfig
+++ b/configs/bg0900_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_BG0900=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_BG0900=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTARGS=y
diff --git a/configs/m28evk_defconfig b/configs/m28evk_defconfig
index 3bc6b1835f..734bc0a456 100644
--- a/configs/m28evk_defconfig
+++ b/configs/m28evk_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_M28EVK=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_M28EVK=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_FIT=y
 CONFIG_BOOTDELAY=3
diff --git a/configs/mx28evk_auart_console_defconfig b/configs/mx28evk_auart_console_defconfig
index c4977564e4..3fef988d2d 100644
--- a/configs/mx28evk_auart_console_defconfig
+++ b/configs/mx28evk_auart_console_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_MX28EVK=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_MX28EVK=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SYS_EXTRA_OPTIONS="MXS_AUART,MXS_AUART_BASE=MXS_UARTAPP3_BASE"
 # CONFIG_CONSOLE_MUX is not set
diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig
index 40c9df2809..82de3bab8f 100644
--- a/configs/mx28evk_defconfig
+++ b/configs/mx28evk_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_MX28EVK=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_MX28EVK=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_FIT=y
 # CONFIG_CONSOLE_MUX is not set
diff --git a/configs/mx28evk_nand_defconfig b/configs/mx28evk_nand_defconfig
index ea97f401d1..bdd60b6e00 100644
--- a/configs/mx28evk_nand_defconfig
+++ b/configs/mx28evk_nand_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_MX28EVK=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_MX28EVK=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig
index 34e9927c0f..b418e98aae 100644
--- a/configs/mx28evk_spi_defconfig
+++ b/configs/mx28evk_spi_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_MX28EVK=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_MX28EVK=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig
index faebc04bd2..c013921e6c 100644
--- a/configs/sc_sps_1_defconfig
+++ b/configs/sc_sps_1_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_SC_SPS_1=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_SC_SPS_1=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_BOOTDELAY=3
 CONFIG_USE_BOOTARGS=y
diff --git a/configs/ts4600_defconfig b/configs/ts4600_defconfig
index aab0737823..bc7a576052 100644
--- a/configs/ts4600_defconfig
+++ b/configs/ts4600_defconfig
@@ -1,7 +1,8 @@
 CONFIG_ARM=y
-CONFIG_TARGET_TS4600=y
+CONFIG_ARCH_MX28=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_TS4600=y
 CONFIG_FIT=y
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_CPUINFO is not set
diff --git a/include/configs/apx4devkit.h b/include/configs/apx4devkit.h
index 903834cd2e..cd65b75250 100644
--- a/include/configs/apx4devkit.h
+++ b/include/configs/apx4devkit.h
@@ -15,7 +15,6 @@
 #define __CONFIGS_APX4DEVKIT_H__
 
 /* System configurations */
-#define CONFIG_MX28				/* i.MX28 SoC */
 #define CONFIG_MACH_TYPE	MACH_TYPE_APX4DEVKIT
 
 /* Memory configuration */
diff --git a/include/configs/bg0900.h b/include/configs/bg0900.h
index 03700b0b7b..0043050b60 100644
--- a/include/configs/bg0900.h
+++ b/include/configs/bg0900.h
@@ -6,9 +6,6 @@
 #ifndef __CONFIGS_BG0900_H__
 #define __CONFIGS_BG0900_H__
 
-/* System configurations */
-#define CONFIG_MX28				/* i.MX28 SoC */
-
 /* Memory configuration */
 #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */
 #define PHYS_SDRAM_1			0x40000000	/* Base address */
diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h
index ad6995d1a0..d44cf786d7 100644
--- a/include/configs/m28evk.h
+++ b/include/configs/m28evk.h
@@ -8,7 +8,6 @@
 #define __CONFIGS_M28EVK_H__
 
 /* System configurations */
-#define CONFIG_MX28				/* i.MX28 SoC */
 #define CONFIG_MACH_TYPE	MACH_TYPE_M28EVK
 
 #define CONFIG_TIMESTAMP		/* Print image info with timestamp */
diff --git a/include/configs/mx28evk.h b/include/configs/mx28evk.h
index 4ada384547..bc58ca5c62 100644
--- a/include/configs/mx28evk.h
+++ b/include/configs/mx28evk.h
@@ -12,7 +12,6 @@
 #define __CONFIGS_MX28EVK_H__
 
 /* System configurations */
-#define CONFIG_MX28				/* i.MX28 SoC */
 #define CONFIG_MACH_TYPE	MACH_TYPE_MX28EVK
 
 /* Memory configuration */
diff --git a/include/configs/sc_sps_1.h b/include/configs/sc_sps_1.h
index e929a071cb..7eae0cc51e 100644
--- a/include/configs/sc_sps_1.h
+++ b/include/configs/sc_sps_1.h
@@ -10,7 +10,6 @@
 #define __CONFIGS_SC_SPS_1_H__
 
 /* System configuration */
-#define CONFIG_MX28				/* i.MX28 SoC */
 #define CONFIG_MACH_TYPE	MACH_TYPE_SC_SPS_1
 
 /* U-Boot Commands */
diff --git a/include/configs/ts4600.h b/include/configs/ts4600.h
index 59565c60e3..bbe268e51c 100644
--- a/include/configs/ts4600.h
+++ b/include/configs/ts4600.h
@@ -14,9 +14,6 @@
 #ifndef __CONFIGS_TS4600_H__
 #define __CONFIGS_TS4600_H__
 
-/* System configurations */
-#define CONFIG_MX28				/* i.MX28 SoC */
-
 /* U-Boot Commands */
 
 /* Memory configuration */
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index ff27abaffd..ccc5ebde8a 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -1414,7 +1414,6 @@ CONFIG_MX25_HCLK_FREQ
 CONFIG_MX27
 CONFIG_MX27_CLK32
 CONFIG_MX27_TIMER_HIGH_PRECISION
-CONFIG_MX28
 CONFIG_MX28_FEC_MAC_IN_OCOTP
 CONFIG_MX31
 CONFIG_MX31_CLK32
-- 
2.16.1



More information about the U-Boot mailing list