diff --git a/arch/arm/mach-mediatek/Kconfig b/arch/arm/mach-mediatek/Kconfig
index e067604d9b..43979838e0 100644
--- a/arch/arm/mach-mediatek/Kconfig
+++ b/arch/arm/mach-mediatek/Kconfig
@@ -80,12 +80,40 @@ config TARGET_MT8518
 
 endchoice
 
-source "board/mediatek/mt7622/Kconfig"
-source "board/mediatek/mt7623/Kconfig"
-source "board/mediatek/mt7629/Kconfig"
-source "board/mediatek/mt8183/Kconfig"
-source "board/mediatek/mt8512/Kconfig"
-source "board/mediatek/mt8516/Kconfig"
-source "board/mediatek/mt8518/Kconfig"
+config SYS_BOARD
+	string "Board name"
+	default "mt7622" if TARGET_MT7622
+	default "mt7623" if TARGET_MT7623
+	default "mt7629" if TARGET_MT7629
+	default "mt8183" if TARGET_MT8183
+	default "mt8512" if TARGET_MT8512
+	default "mt8516" if TARGET_MT8516
+	default "mt8518" if TARGET_MT8518
+	default ""
+	help
+	  This option contains information about board name.
+	  Based on this option board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> will
+	  be used.
+
+config SYS_CONFIG_NAME
+	string "Board configuration name"
+	default "mt7622" if TARGET_MT7622
+	default "mt7623" if TARGET_MT7623
+	default "mt7629" if TARGET_MT7629
+	default "mt8183" if TARGET_MT8183
+	default "mt8512" if TARGET_MT8512
+	default "mt8516" if TARGET_MT8516
+	default "mt8518" if TARGET_MT8518
+	default ""
+	help
+	  This option contains information about board configuration name.
+	  Based on this option include/configs/<CONFIG_SYS_CONFIG_NAME>.h header
+	  will be used for board configuration.
+
+config MTK_BROM_HEADER_INFO
+	string
+	default "media=nor" if TARGET_MT8518 || TARGET_MT8512 || TARGET_MT7629 || TARGET_MT7622
+	default "media=emmc" if TARGET_MT8516 || TARGET_MT8365 || TARGET_MT8183
+	default "lk=1" if TARGET_MT7623
 
 endif
diff --git a/arch/mips/mach-mtmips/Kconfig b/arch/mips/mach-mtmips/Kconfig
index 8756cadb0b..05347ff78c 100644
--- a/arch/mips/mach-mtmips/Kconfig
+++ b/arch/mips/mach-mtmips/Kconfig
@@ -1,6 +1,9 @@
 menu "MediaTek MIPS platforms"
 	depends on ARCH_MTMIPS
 
+config SYS_VENDOR
+	default "mediatek" if BOARD_MT7628_RFB || BOARD_MT7620_RFB || BOARD_MT7620_MT7530_RFB
+
 config SYS_MALLOC_F_LEN
 	default 0x1000
 
diff --git a/arch/mips/mach-mtmips/mt7620/Kconfig b/arch/mips/mach-mtmips/mt7620/Kconfig
index 5db83eb9d9..3ca711ad0f 100644
--- a/arch/mips/mach-mtmips/mt7620/Kconfig
+++ b/arch/mips/mach-mtmips/mt7620/Kconfig
@@ -66,6 +66,12 @@ config CPU_FREQ_MULTI
 	default 6 if CPU_FREQ_600MHZ
 	default 7 if CPU_FREQ_620MHZ
 
-source "board/mediatek/mt7620/Kconfig"
+config SYS_CONFIG_NAME
+	string "Board configuration name"
+	default "mt7620" if  BOARD_MT7620_RFB || BOARD_MT7620_MT7530_RFB
+
+config SYS_BOARD
+	string "Board name"
+	default "mt7620" if  BOARD_MT7620_RFB || BOARD_MT7620_MT7530_RFB
 
 endif
diff --git a/arch/mips/mach-mtmips/mt7628/Kconfig b/arch/mips/mach-mtmips/mt7628/Kconfig
index e3f56e782e..feb122df32 100644
--- a/arch/mips/mach-mtmips/mt7628/Kconfig
+++ b/arch/mips/mach-mtmips/mt7628/Kconfig
@@ -45,8 +45,15 @@ config SPL_UART2_SPIS_PINMUX
 	  Select this if the UART2 of your board is connected to GPIO 16/17
 	  (shared with SPIS) rather than the usual GPIO 20/21.
 
+config SYS_BOARD
+	string "Board name"
+	default "mt7628" if BOARD_MT7628_RFB
+
+config SYS_CONFIG_NAME
+	string "Board configuration name"
+	default "mt7628" if BOARD_MT7628_RFB
+
 source "board/gardena/smart-gateway-mt7688/Kconfig"
-source "board/mediatek/mt7628/Kconfig"
 source "board/seeed/linkit-smart-7688/Kconfig"
 source "board/vocore/vocore2/Kconfig"
 
diff --git a/board/mediatek/mt7620/Kconfig b/board/mediatek/mt7620/Kconfig
deleted file mode 100644
index b9137adcc9..0000000000
--- a/board/mediatek/mt7620/Kconfig
+++ /dev/null
@@ -1,12 +0,0 @@
-if BOARD_MT7620_RFB || BOARD_MT7620_MT7530_RFB
-
-config SYS_BOARD
-	default "mt7620"
-
-config SYS_VENDOR
-	default "mediatek"
-
-config SYS_CONFIG_NAME
-	default "mt7620"
-
-endif
diff --git a/board/mediatek/mt7622/Kconfig b/board/mediatek/mt7622/Kconfig
deleted file mode 100644
index d0abdc0a67..0000000000
--- a/board/mediatek/mt7622/Kconfig
+++ /dev/null
@@ -1,17 +0,0 @@
-if TARGET_MT7622
-
-config SYS_BOARD
-	default "mt7622"
-
-config SYS_CONFIG_NAME
-	default "mt7622"
-
-config MTK_BROM_HEADER_INFO
-	string
-	default "lk=1"
-
-config MTK_BROM_HEADER_INFO
-	string
-	default "media=nor"
-
-endif
diff --git a/board/mediatek/mt7623/Kconfig b/board/mediatek/mt7623/Kconfig
deleted file mode 100644
index a8c670e71f..0000000000
--- a/board/mediatek/mt7623/Kconfig
+++ /dev/null
@@ -1,13 +0,0 @@
-if TARGET_MT7623
-
-config SYS_BOARD
-	default "mt7623"
-
-config SYS_CONFIG_NAME
-	default "mt7623"
-
-config MTK_BROM_HEADER_INFO
-	string
-	default "lk=1"
-
-endif
diff --git a/board/mediatek/mt7628/Kconfig b/board/mediatek/mt7628/Kconfig
deleted file mode 100644
index d6b6f9d632..0000000000
--- a/board/mediatek/mt7628/Kconfig
+++ /dev/null
@@ -1,12 +0,0 @@
-if BOARD_MT7628_RFB
-
-config SYS_BOARD
-	default "mt7628"
-
-config SYS_VENDOR
-	default "mediatek"
-
-config SYS_CONFIG_NAME
-	default "mt7628"
-
-endif
diff --git a/board/mediatek/mt7629/Kconfig b/board/mediatek/mt7629/Kconfig
deleted file mode 100644
index 6055164b52..0000000000
--- a/board/mediatek/mt7629/Kconfig
+++ /dev/null
@@ -1,17 +0,0 @@
-if TARGET_MT7629
-
-config SYS_BOARD
-	default "mt7629"
-
-config SYS_CONFIG_NAME
-	default "mt7629"
-
-config MTK_SPL_PAD_SIZE
-	hex
-	default 0x10000
-
-config MTK_BROM_HEADER_INFO
-	string
-	default "media=nor"
-
-endif
diff --git a/board/mediatek/mt8183/Kconfig b/board/mediatek/mt8183/Kconfig
deleted file mode 100644
index b75c3b8d80..0000000000
--- a/board/mediatek/mt8183/Kconfig
+++ /dev/null
@@ -1,13 +0,0 @@
-if TARGET_MT8183
-
-config SYS_BOARD
-	default "mt8183"
-
-config SYS_CONFIG_NAME
-	default "mt8183"
-
-config MTK_BROM_HEADER_INFO
-	string
-	default "media=emmc"
-
-endif
diff --git a/board/mediatek/mt8512/Kconfig b/board/mediatek/mt8512/Kconfig
deleted file mode 100644
index 87bd1fbe69..0000000000
--- a/board/mediatek/mt8512/Kconfig
+++ /dev/null
@@ -1,14 +0,0 @@
-if TARGET_MT8512
-
-config SYS_BOARD
-	default "mt8512"
-
-config SYS_CONFIG_NAME
-	default "mt8512"
-
-
-config MTK_BROM_HEADER_INFO
-	string
-	default "media=nor"
-
-endif
diff --git a/board/mediatek/mt8516/Kconfig b/board/mediatek/mt8516/Kconfig
deleted file mode 100644
index a87d3872fe..0000000000
--- a/board/mediatek/mt8516/Kconfig
+++ /dev/null
@@ -1,13 +0,0 @@
-if TARGET_MT8516
-
-config SYS_BOARD
-	default "mt8516"
-
-config SYS_CONFIG_NAME
-	default "mt8516"
-
-config MTK_BROM_HEADER_INFO
-	string
-	default "media=emmc"
-
-endif
diff --git a/board/mediatek/mt8518/Kconfig b/board/mediatek/mt8518/Kconfig
deleted file mode 100644
index 1971c4d8c3..0000000000
--- a/board/mediatek/mt8518/Kconfig
+++ /dev/null
@@ -1,14 +0,0 @@
-if TARGET_MT8518
-
-config SYS_BOARD
-	default "mt8518"
-
-config SYS_CONFIG_NAME
-	default "mt8518"
-
-
-config MTK_BROM_HEADER_INFO
-	string
-	default "media=nor"
-
-endif
