]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
vexpress64: get rid of CONFIG_SYS_EXTRA_OPTIONS
authorLinus Walleij <linus.walleij@linaro.org>
Fri, 23 Jan 2015 10:50:53 +0000 (11:50 +0100)
committerTom Rini <trini@ti.com>
Fri, 30 Jan 2015 14:19:17 +0000 (09:19 -0500)
The Versatile Express ARMv8 semihosted FVP platform is still
using the legacy CONFIG_SYS_EXTRA_OPTIONS method to configure
some compile-time flags. Get rid of this and create a Kconfig
entry for the FVP model, and a selectable bool for the
semihosting library.

The FVP subboard is now modeled as a target choice so we can
eventually choose between different ARMv8 versatile express
boards (FVP, base model, Juno...) this way. All dependent
symbols are updated to reflect this.

The 64bit Versatile Express board symbols are renamed
VEXPRESS64 so we have some chance to see what is actually
going on. Tested on the FVP fast model.

Acked-by: Steve Rae <srae@broadcom.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
arch/arm/Kconfig
board/armltd/vexpress64/Kconfig
configs/vexpress_aemv8a_defconfig
configs/vexpress_aemv8a_semi_defconfig
include/configs/vexpress_aemv8a.h

index 5eb1d03cfaafbdb8faf75c01cb5cc5839c0102a1..d5399f162d57a83993605ff385a44a9fa5057fcb 100644 (file)
@@ -51,6 +51,13 @@ config SYS_CPU
         default "sa1100" if CPU_SA1100
        default "armv8" if ARM64
 
+config SEMIHOSTING
+       bool "support boot from semihosting"
+       help
+         In emulated environments, semihosting is a way for
+         the hosted environment to call out to the emulator to
+         retrieve files from the host machine.
+
 choice
        prompt "Target select"
 
@@ -720,10 +727,15 @@ config TEGRA
        select CPU_ARM720T if SPL_BUILD
        select CPU_V7 if !SPL_BUILD
 
-config TARGET_VEXPRESS_AEMV8A
+config TARGET_VEXPRESS64_AEMV8A
        bool "Support vexpress_aemv8a"
        select ARM64
 
+config TARGET_VEXPRESS64_BASE_FVP
+       bool "Support Versatile Express ARMv8a FVP BASE model"
+       select ARM64
+       select SEMIHOSTING
+
 config TARGET_LS2085A_EMU
        bool "Support ls2085a_emu"
        select ARM64
index 7ebea6317f70f320928a9d7705bfed878330a10f..80eaa3d3ab0807d56b110eb02d798f37c68c26f1 100644 (file)
@@ -1,4 +1,17 @@
-if TARGET_VEXPRESS_AEMV8A
+if TARGET_VEXPRESS64_AEMV8A
+
+config SYS_BOARD
+       default "vexpress64"
+
+config SYS_VENDOR
+       default "armltd"
+
+config SYS_CONFIG_NAME
+       default "vexpress_aemv8a"
+
+endif
+
+if TARGET_VEXPRESS64_BASE_FVP
 
 config SYS_BOARD
        default "vexpress64"
index b463a333bc6bb10cd84c040fad6ae38c98732a0f..9f4b876556137aefa8270fc0da776378b045f2a1 100644 (file)
@@ -1,3 +1,3 @@
 CONFIG_ARM=y
-CONFIG_TARGET_VEXPRESS_AEMV8A=y
+CONFIG_TARGET_VEXPRESS64_AEMV8A=y
 CONFIG_DEFAULT_DEVICE_TREE="vexpress64"
index 0035ccdaecd4596e557c1d38b9deaf254053577f..26cf7db47f845ab9dff99bdb30c6cb3ce568dcb9 100644 (file)
@@ -1,4 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="SEMIHOSTING,BASE_FVP"
+# Semihosted FVP fast model
 CONFIG_ARM=y
-CONFIG_TARGET_VEXPRESS_AEMV8A=y
+CONFIG_TARGET_VEXPRESS64_BASE_FVP=y
 CONFIG_DEFAULT_DEVICE_TREE="vexpress64"
index 027d78b59171901274da4e46c0da576c128c6415..85894bedf8bd99594d0198fbe60805c35d73538c 100644 (file)
@@ -11,9 +11,9 @@
 /* We use generic board for v8 Versatile Express */
 #define CONFIG_SYS_GENERIC_BOARD
 
-#ifdef CONFIG_BASE_FVP
+#ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
 #ifndef CONFIG_SEMIHOSTING
-#error CONFIG_BASE_FVP requires CONFIG_SEMIHOSTING
+#error CONFIG_TARGET_VEXPRESS64_BASE_FVP requires CONFIG_SEMIHOSTING
 #endif
 #define CONFIG_BOARD_LATE_INIT
 #define CONFIG_ARMV8_SWITCH_TO_EL1
@@ -21,8 +21,8 @@
 
 #define CONFIG_REMAKE_ELF
 
-#ifndef CONFIG_BASE_FVP
-/* Base FVP not using GICv3 yet */
+#ifndef CONFIG_TARGET_VEXPRESS64_BASE_FVP
+/* Base FVP and Juno not using GICv3 yet */
 #define CONFIG_GICV3
 #endif
 
@@ -40,7 +40,7 @@
 #define CONFIG_BOOTP_VCI_STRING                "U-boot.armv8.vexpress_aemv8a"
 
 /* Link Definitions */
-#ifdef CONFIG_BASE_FVP
+#ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
 /* ATF loads u-boot here for BASE_FVP model */
 #define CONFIG_SYS_TEXT_BASE           0x88000000
 #define CONFIG_SYS_INIT_SP_ADDR         (CONFIG_SYS_SDRAM_BASE + 0x03f00000)
@@ -54,7 +54,7 @@
 
 
 /* SMP Spin Table Definitions */
-#ifdef CONFIG_BASE_FVP
+#ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
 #define CPU_RELEASE_ADDR               (CONFIG_SYS_SDRAM_BASE + 0x03f00000)
 #else
 #define CPU_RELEASE_ADDR               (CONFIG_SYS_SDRAM_BASE + 0x7fff0)
 #define GICR_BASE                      (0x2f100000)
 #else
 
-#ifdef CONFIG_BASE_FVP
+#ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
 #define GICD_BASE                      (0x2f000000)
 #define GICC_BASE                      (0x2c000000)
 #else
 #define CONFIG_SYS_SDRAM_BASE          PHYS_SDRAM_1
 
 /* Initial environment variables */
-#ifdef CONFIG_BASE_FVP
+#ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
 #define CONFIG_EXTRA_ENV_SETTINGS      \
                                "kernel_name=uImage\0"  \
                                "kernel_addr_r=0x80000000\0"    \