@@ -1,28 +1,38 @@
if ARCH_SOCFPGA
+config TARGET_SOCFPGA_ARRIA5
+ bool
+
+config TARGET_SOCFPGA_CYCLONE5
+ bool
+
choice
prompt "Altera SOCFPGA board select"
optional
-config TARGET_SOCFPGA_ARRIA5
- bool "Altera SOCFPGA Arria V"
+config TARGET_SOCFPGA_ARRIA5_SOCDK
+ bool "Altera SOCFPGA SoCDK (Arria V)"
+ select TARGET_SOCFPGA_ARRIA5
-config TARGET_SOCFPGA_CYCLONE5
- bool "Altera SOCFPGA Cyclone V"
+config TARGET_SOCFPGA_CYCLONE5_SOCDK
+ bool "Altera SOCFPGA SoCDK (Cyclone V)"
+ select TARGET_SOCFPGA_CYCLONE5
endchoice
config SYS_BOARD
- default "socfpga"
+ default "socfpga" if TARGET_SOCFPGA_ARRIA5_SOCDK
+ default "socfpga" if TARGET_SOCFPGA_CYCLONE5_SOCDK
config SYS_VENDOR
- default "altera"
+ default "altera" if TARGET_SOCFPGA_ARRIA5_SOCDK
+ default "altera" if TARGET_SOCFPGA_CYCLONE5_SOCDK
config SYS_SOC
default "socfpga"
config SYS_CONFIG_NAME
- default "socfpga_arria5" if TARGET_SOCFPGA_ARRIA5
- default "socfpga_cyclone5" if TARGET_SOCFPGA_CYCLONE5
+ default "socfpga_arria5" if TARGET_SOCFPGA_ARRIA5_SOCDK
+ default "socfpga_cyclone5" if TARGET_SOCFPGA_CYCLONE5_SOCDK
endif
@@ -1,6 +1,7 @@
CONFIG_ARM=y
CONFIG_ARCH_SOCFPGA=y
CONFIG_TARGET_SOCFPGA_ARRIA5=y
+CONFIG_TARGET_SOCFPGA_ARRIA5_SOCDK=y
CONFIG_DEFAULT_DEVICE_TREE="socfpga_arria5_socdk"
CONFIG_SPL=y
# CONFIG_CMD_IMLS is not set
@@ -1,6 +1,7 @@
CONFIG_ARM=y
CONFIG_ARCH_SOCFPGA=y
CONFIG_TARGET_SOCFPGA_CYCLONE5=y
+CONFIG_TARGET_SOCFPGA_CYCLONE5_SOCDK=y
CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socdk"
CONFIG_SPL=y
# CONFIG_CMD_IMLS is not set
@@ -1,6 +1,7 @@
CONFIG_ARM=y
CONFIG_ARCH_SOCFPGA=y
CONFIG_TARGET_SOCFPGA_CYCLONE5=y
+CONFIG_TARGET_SOCFPGA_CYCLONE5_SOCDK=y
CONFIG_DEFAULT_DEVICE_TREE="socfpga_cyclone5_socrates"
CONFIG_SPL=y
# CONFIG_CMD_IMLS is not set
The CONFIG_TARGET_SOCFPGA_CYCLONE5 and CONFIG_TARGET_SOCFPGA_ARRIA5 selected both a board and a CPU. This is not correct as these macros are supposed to select only board. All would be good, if QTS-generated header files didn't check for these macros exactly to determine if the platform is Cyclone V or Arria V. Thus, for the sake of compatibility with not well fleshed out header file generator, this patch makes these two macros into a stub config option and introduces new CONFIG_TARGET_SOCFPGA_CYCLONE5_SOCDK and CONFIG_TARGET_SOCFPGA_ARRIA5_SOCDK targets, which select the previous stub config option. The result is that compatibility with QTS is preserved and the new CONFIG_TARGET_* select actual target boards. Signed-off-by: Marek Vasut <marex@denx.de> --- arch/arm/mach-socfpga/Kconfig | 26 ++++++++++++++++++-------- configs/socfpga_arria5_defconfig | 1 + configs/socfpga_cyclone5_defconfig | 1 + configs/socfpga_socrates_defconfig | 1 + 4 files changed, 21 insertions(+), 8 deletions(-)