diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 8f5f4237957c1d3d29fd6c874943f1cb62aa0e26..3094ed67089f46c8ec07bf8990103d56846ece5b 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -190,8 +190,8 @@ config TARGET_SANSA_FUZE_PLUS
 config TARGET_SC_SPS_1
 	bool "Support sc_sps_1"
 
-config TARGET_NHK8815
-	bool "Support nhk8815"
+config ARCH_NOMADIK
+	bool "ST-Ericsson Nomadik"
 
 config ORION5X
 	bool "Marvell Orion"
@@ -518,6 +518,8 @@ source "arch/arm/cpu/armv7/keystone/Kconfig"
 
 source "arch/arm/cpu/arm926ejs/kirkwood/Kconfig"
 
+source "arch/arm/cpu/arm926ejs/nomadik/Kconfig"
+
 source "arch/arm/cpu/armv7/omap3/Kconfig"
 
 source "arch/arm/cpu/armv7/omap4/Kconfig"
@@ -650,7 +652,6 @@ source "board/spear/spear600/Kconfig"
 source "board/spear/x600/Kconfig"
 source "board/st-ericsson/snowball/Kconfig"
 source "board/st-ericsson/u8500/Kconfig"
-source "board/st/nhk8815/Kconfig"
 source "board/sunxi/Kconfig"
 source "board/syteco/jadecpu/Kconfig"
 source "board/syteco/zmx25/Kconfig"
diff --git a/arch/arm/cpu/arm926ejs/nomadik/Kconfig b/arch/arm/cpu/arm926ejs/nomadik/Kconfig
new file mode 100644
index 0000000000000000000000000000000000000000..7177800a6172e277faa2c7cf8837f77a042c7957
--- /dev/null
+++ b/arch/arm/cpu/arm926ejs/nomadik/Kconfig
@@ -0,0 +1,21 @@
+if ARCH_NOMADIK
+
+choice
+	prompt "Nomadik board select"
+
+config NOMADIK_NHK8815
+	bool "ST 8815 Nomadik Hardware Kit"
+
+endchoice
+
+config SYS_CPU
+	string
+	default "arm926ejs"
+
+config SYS_SOC
+	string
+	default "nomadik"
+
+source "board/st/nhk8815/Kconfig"
+
+endif
diff --git a/board/st/nhk8815/Kconfig b/board/st/nhk8815/Kconfig
index ec3f880deaaca65ea28bf0b734ca148d328be2ec..ba2e7c2e09925c52ff8ea7dd605dcbdcdf14192b 100644
--- a/board/st/nhk8815/Kconfig
+++ b/board/st/nhk8815/Kconfig
@@ -1,8 +1,4 @@
-if TARGET_NHK8815
-
-config SYS_CPU
-	string
-	default "arm926ejs"
+if NOMADIK_NHK8815
 
 config SYS_BOARD
 	string
@@ -12,10 +8,6 @@ config SYS_VENDOR
 	string
 	default "st"
 
-config SYS_SOC
-	string
-	default "nomadik"
-
 config SYS_CONFIG_NAME
 	string
 	default "nhk8815"
diff --git a/configs/nhk8815_defconfig b/configs/nhk8815_defconfig
index 3d20199b00d2348b37c35af02aa3a91ea8b0243e..f661226897a7c564dbca19e5d0fdcb24c1a7787d 100644
--- a/configs/nhk8815_defconfig
+++ b/configs/nhk8815_defconfig
@@ -1,2 +1,3 @@
 CONFIG_ARM=y
-CONFIG_TARGET_NHK8815=y
+CONFIG_ARCH_NOMADIK=y
+CONFIG_NOMADIK_NHK8815=y
diff --git a/configs/nhk8815_onenand_defconfig b/configs/nhk8815_onenand_defconfig
index 860ae926123dd6ec3c75129501301b9af3c62b35..dd8048df74cbe13088f388b0687196e78117580f 100644
--- a/configs/nhk8815_onenand_defconfig
+++ b/configs/nhk8815_onenand_defconfig
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="BOOT_ONENAND"
 CONFIG_ARM=y
-CONFIG_TARGET_NHK8815=y
+CONFIG_ARCH_NOMADIK=y
+CONFIG_NOMADIK_NHK8815=y
diff --git a/include/configs/nhk8815.h b/include/configs/nhk8815.h
index 4d3428cb811d7d6a9d732089fb8cc5a6e9bf277a..5419f551d316f3c23141bf5009eda1b3c0491a32 100644
--- a/include/configs/nhk8815.h
+++ b/include/configs/nhk8815.h
@@ -13,9 +13,7 @@
 #include <nomadik.h>
 
 #define CONFIG_ARM926EJS
-#define CONFIG_NOMADIK
 #define CONFIG_NOMADIK_8815	/* cpu variant */
-#define CONFIG_NOMADIK_NHK8815	/* board variant */
 
 #define CONFIG_SKIP_LOWLEVEL_INIT /* we have already been loaded to RAM */