diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 1df6b363ac2a09e3d6782912e8ead79db091daae..0b70c4740705d945c44e39711ee1d1de01ce1dec 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -584,40 +584,6 @@ config ARCH_MX5
 	select CPU_V7
 	select BOARD_EARLY_INIT_F
 
-config TARGET_M53EVK
-	bool "Support m53evk"
-	select CPU_V7
-	select SUPPORT_SPL
-	select BOARD_EARLY_INIT_F
-
-config TARGET_MX51EVK
-	bool "Support mx51evk"
-	select BOARD_LATE_INIT
-	select CPU_V7
-	select BOARD_EARLY_INIT_F
-
-config TARGET_MX53ARD
-	bool "Support mx53ard"
-	select CPU_V7
-	select BOARD_EARLY_INIT_F
-
-config TARGET_MX53EVK
-	bool "Support mx53evk"
-	select BOARD_LATE_INIT
-	select CPU_V7
-	select BOARD_EARLY_INIT_F
-
-config TARGET_MX53LOCO
-	bool "Support mx53loco"
-	select BOARD_LATE_INIT
-	select CPU_V7
-	select BOARD_EARLY_INIT_F
-
-config TARGET_MX53SMD
-	bool "Support mx53smd"
-	select CPU_V7
-	select BOARD_EARLY_INIT_F
-
 config ARCH_RMOBILE
 	bool "Renesas ARM SoCs"
 	select DM
@@ -683,11 +649,6 @@ config TARGET_TS4600
 	select CPU_ARM926EJS
 	select SUPPORT_SPL
 
-config TARGET_TS4800
-	bool "Support TS4800"
-	select CPU_V7
-	select SYS_FSL_ERRATUM_ESDHC_A001
-
 config ARCH_VF610
 	bool "Freescale Vybrid"
 	select CPU_V7
@@ -1098,7 +1059,6 @@ source "arch/arm/cpu/armv8/Kconfig"
 source "arch/arm/imx-common/Kconfig"
 
 source "board/aries/m28evk/Kconfig"
-source "board/aries/m53evk/Kconfig"
 source "board/bosch/shc/Kconfig"
 source "board/CarMediaLab/flea3/Kconfig"
 source "board/Marvell/aspenite/Kconfig"
@@ -1134,11 +1094,6 @@ source "board/freescale/mx28evk/Kconfig"
 source "board/freescale/mx31ads/Kconfig"
 source "board/freescale/mx31pdk/Kconfig"
 source "board/freescale/mx35pdk/Kconfig"
-source "board/freescale/mx51evk/Kconfig"
-source "board/freescale/mx53ard/Kconfig"
-source "board/freescale/mx53evk/Kconfig"
-source "board/freescale/mx53loco/Kconfig"
-source "board/freescale/mx53smd/Kconfig"
 source "board/freescale/s32v234evb/Kconfig"
 source "board/gdsys/a38x/Kconfig"
 source "board/grinn/chiliboard/Kconfig"
@@ -1166,7 +1121,6 @@ source "board/birdland/bav335x/Kconfig"
 source "board/timll/devkit3250/Kconfig"
 source "board/toradex/colibri_pxa270/Kconfig"
 source "board/technologic/ts4600/Kconfig"
-source "board/technologic/ts4800/Kconfig"
 source "board/vscom/baltos/Kconfig"
 source "board/woodburn/Kconfig"
 source "board/work-microwave/work_92105/Kconfig"
diff --git a/arch/arm/cpu/armv7/mx5/Kconfig b/arch/arm/cpu/armv7/mx5/Kconfig
index 7b55747612a90dbe4335c55dbc7a51574238e401..ef37c351d04631f9007e64d06b99b2695ff06aa0 100644
--- a/arch/arm/cpu/armv7/mx5/Kconfig
+++ b/arch/arm/cpu/armv7/mx5/Kconfig
@@ -14,24 +14,63 @@ choice
 	prompt "MX5 board select"
 	optional
 
-config TARGET_USBARMORY
-	bool "Support USB armory"
-	select CPU_V7
+config TARGET_M53EVK
+	bool "Support m53evk"
+	select MX53
+	select SUPPORT_SPL
+
+config TARGET_MX51EVK
+	bool "Support mx51evk"
+	select BOARD_LATE_INIT
+	select MX51
+
+config TARGET_MX53ARD
+	bool "Support mx53ard"
+	select MX53
 
 config TARGET_MX53CX9020
 	bool "Support CX9020"
 	select BOARD_LATE_INIT
-	select CPU_V7
 	select MX53
 	select DM
 	select DM_SERIAL
 
+config TARGET_MX53EVK
+	bool "Support mx53evk"
+	select BOARD_LATE_INIT
+	select MX53
+
+config TARGET_MX53LOCO
+	bool "Support mx53loco"
+	select BOARD_LATE_INIT
+	select MX53
+
+config TARGET_MX53SMD
+	bool "Support mx53smd"
+	select MX53
+
+config TARGET_TS4800
+	bool "Support TS4800"
+	select MX51
+	select SYS_FSL_ERRATUM_ESDHC_A001
+
+config TARGET_USBARMORY
+	bool "Support USB armory"
+	select MX53
+
 endchoice
 
 config SYS_SOC
 	default "mx5"
 
+source "board/aries/m53evk/Kconfig"
 source "board/beckhoff/mx53cx9020/Kconfig"
+source "board/freescale/mx51evk/Kconfig"
+source "board/freescale/mx53ard/Kconfig"
+source "board/freescale/mx53evk/Kconfig"
+source "board/freescale/mx53loco/Kconfig"
+source "board/freescale/mx53smd/Kconfig"
 source "board/inversepath/usbarmory/Kconfig"
+source "board/technologic/ts4800/Kconfig"
 
 endif
diff --git a/configs/m53evk_defconfig b/configs/m53evk_defconfig
index 4dff335ef5cc530a7b10130a29cbf7daaf8f99a8..74b1ae6eb8a96c728e01a5108d4269a89936e583 100644
--- a/configs/m53evk_defconfig
+++ b/configs/m53evk_defconfig
@@ -1,8 +1,9 @@
 CONFIG_ARM=y
-CONFIG_TARGET_M53EVK=y
+CONFIG_ARCH_MX5=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_M53EVK=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_VIDEO=y
diff --git a/configs/mx51evk_defconfig b/configs/mx51evk_defconfig
index 9ac4b65f6219a0e21d665543607e0ab01e8ea157..b385009c53f8f195aeda67cac321e34f9b58a2f7 100644
--- a/configs/mx51evk_defconfig
+++ b/configs/mx51evk_defconfig
@@ -1,4 +1,5 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX5=y
 CONFIG_TARGET_MX51EVK=y
 CONFIG_VIDEO=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx51evk/imximage.cfg"
diff --git a/configs/mx53ard_defconfig b/configs/mx53ard_defconfig
index 886296b1529a7f9a95d609b08cb077ba2b6782b7..51d3bfb6a46edb78bbd2c6bb1bd61aade6159fed 100644
--- a/configs/mx53ard_defconfig
+++ b/configs/mx53ard_defconfig
@@ -1,4 +1,5 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX5=y
 CONFIG_TARGET_MX53ARD=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53ard/imximage_dd3.cfg"
 CONFIG_BOOTDELAY=3
diff --git a/configs/mx53evk_defconfig b/configs/mx53evk_defconfig
index 9a05a8bf8c91da16db7693a29a82def8a67d358b..2c54942e8368de2511b72d65d54646762247c0e9 100644
--- a/configs/mx53evk_defconfig
+++ b/configs/mx53evk_defconfig
@@ -1,4 +1,5 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX5=y
 CONFIG_TARGET_MX53EVK=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53evk/imximage.cfg"
 CONFIG_BOOTDELAY=3
diff --git a/configs/mx53loco_defconfig b/configs/mx53loco_defconfig
index a7a481363ead261be9955f37b073909ba70e8cb6..5b62f03c0878a3d8b017501603948643681e3112 100644
--- a/configs/mx53loco_defconfig
+++ b/configs/mx53loco_defconfig
@@ -1,4 +1,5 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX5=y
 CONFIG_TARGET_MX53LOCO=y
 CONFIG_VIDEO=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53loco/imximage.cfg"
diff --git a/configs/mx53smd_defconfig b/configs/mx53smd_defconfig
index 93b20d7044f013a7435bccce439e8b461d99c0ab..95ca52eb213ca02b200fd56acfd7daa3ef4dffe9 100644
--- a/configs/mx53smd_defconfig
+++ b/configs/mx53smd_defconfig
@@ -1,4 +1,5 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX5=y
 CONFIG_TARGET_MX53SMD=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53smd/imximage.cfg"
 CONFIG_BOOTDELAY=3
diff --git a/configs/ts4800_defconfig b/configs/ts4800_defconfig
index 255eedfbc38c1a21d9fa49e652a5580445e5a7b0..5a4bf2773e3ebbd98421fe8c91f1b266b3adcb19 100644
--- a/configs/ts4800_defconfig
+++ b/configs/ts4800_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX5=y
 CONFIG_TARGET_TS4800=y
 CONFIG_BOOTDELAY=1
-CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
diff --git a/include/configs/m53evk.h b/include/configs/m53evk.h
index 275ecf36ca07d1edf13238b560120b1d4999edc6..02cd6353fb96d3f54ac4c008480738c45da8e6b7 100644
--- a/include/configs/m53evk.h
+++ b/include/configs/m53evk.h
@@ -8,7 +8,6 @@
 #ifndef __M53EVK_CONFIG_H__
 #define __M53EVK_CONFIG_H__
 
-#define CONFIG_MX53
 #define CONFIG_MXC_GPIO
 
 #include <asm/arch/imx-regs.h>
diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h
index 98c9f9bbf62a28069ff10e686d571d1862421eee..726d3c88f2e17e1fb54b8f0ec3d2f164bf4f5da0 100644
--- a/include/configs/mx51evk.h
+++ b/include/configs/mx51evk.h
@@ -13,8 +13,6 @@
 
  /* High Level Configuration Options */
 
-#define CONFIG_MX51	/* in a mx51 */
-
 #define CONFIG_SYS_FSL_CLK
 #define CONFIG_SYS_TEXT_BASE	0x97800000
 
diff --git a/include/configs/mx53ard.h b/include/configs/mx53ard.h
index 86126144379ce6e2bd5cb7ed844a52cebda42213..aee6e70c39c557448aa479c412ad0daf05a943a1 100644
--- a/include/configs/mx53ard.h
+++ b/include/configs/mx53ard.h
@@ -9,8 +9,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_MX53
-
 #define CONFIG_MACH_TYPE	MACH_TYPE_MX53_ARD
 
 #include <asm/arch/imx-regs.h>
diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h
index b3519ae7e798ed7aeadeb1d196d05a0df964040e..dc49e24f1541cc7c72c86d1b0baab992631c59e3 100644
--- a/include/configs/mx53evk.h
+++ b/include/configs/mx53evk.h
@@ -9,8 +9,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_MX53
-
 #define CONFIG_MACH_TYPE	MACH_TYPE_MX53_EVK
 
 #include <asm/arch/imx-regs.h>
diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h
index fed40eb58dba697a1b90cf881caa342f4184d491..945be5835bf4e6e739a1a9edf9efd50b729288d8 100644
--- a/include/configs/mx53loco.h
+++ b/include/configs/mx53loco.h
@@ -10,8 +10,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_MX53
-
 #define CONFIG_MACH_TYPE	MACH_TYPE_MX53_LOCO
 
 #include <asm/arch/imx-regs.h>
diff --git a/include/configs/mx53smd.h b/include/configs/mx53smd.h
index e9d570e1d77c4e0b283ba08e7bc1e83b67554180..d064337f472a1cafe0fb163a214aa85b6519c8a9 100644
--- a/include/configs/mx53smd.h
+++ b/include/configs/mx53smd.h
@@ -9,8 +9,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_MX53
-
 #define CONFIG_MACH_TYPE	MACH_TYPE_MX53_SMD
 
 #include <asm/arch/imx-regs.h>
diff --git a/include/configs/ts4800.h b/include/configs/ts4800.h
index a65c5f1c710c2c447a1de4da8c8c52d2e70ab83d..7bb8c879887f7e2ced36ab14b247eed162d5451e 100644
--- a/include/configs/ts4800.h
+++ b/include/configs/ts4800.h
@@ -14,7 +14,6 @@
 #define __CONFIG_H
 
 /* High Level Configuration Options */
-#define CONFIG_MX51
 
 #define CONFIG_SKIP_LOWLEVEL_INIT	/* U-Boot is a 2nd stage bootloader */
 
diff --git a/include/configs/usbarmory.h b/include/configs/usbarmory.h
index a67802a160012e09e6195cc3bb6759e08c79d877..58b62d2448953bddb10bb650773a28cb7ee99d23 100644
--- a/include/configs/usbarmory.h
+++ b/include/configs/usbarmory.h
@@ -11,7 +11,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_MX53
 #define CONFIG_SYS_FSL_CLK
 #define CONFIG_MXC_GPIO