* [U-Boot] [PATCH 3/4] vexpress64: get rid of CONFIG_SYS_EXTRA_OPTIONS
@ 2014-12-24 1:02 Linus Walleij
2014-12-26 18:04 ` Steve Rae
2014-12-29 21:29 ` Tom Rini
0 siblings, 2 replies; 3+ messages in thread
From: Linus Walleij @ 2014-12-24 1:02 UTC (permalink / raw)
To: u-boot
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.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
arch/arm/Kconfig | 14 +++++++++++++-
board/armltd/vexpress64/Kconfig | 13 +++++++++++++
configs/vexpress_aemv8a_defconfig | 2 +-
configs/vexpress_aemv8a_semi_defconfig | 4 ++--
include/configs/vexpress_aemv8a.h | 16 ++++++++--------
5 files changed, 37 insertions(+), 12 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 2b0d2c933895..9a7e36570de5 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -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
diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig
index 7ebea6317f70..2343e717f121 100644
--- a/board/armltd/vexpress64/Kconfig
+++ b/board/armltd/vexpress64/Kconfig
@@ -10,3 +10,16 @@ config SYS_CONFIG_NAME
default "vexpress_aemv8a"
endif
+
+if TARGET_VEXPRESS64_BASE_FVP
+
+config SYS_BOARD
+ default "vexpress64"
+
+config SYS_VENDOR
+ default "armltd"
+
+config SYS_CONFIG_NAME
+ default "vexpress_aemv8a"
+
+endif
diff --git a/configs/vexpress_aemv8a_defconfig b/configs/vexpress_aemv8a_defconfig
index b463a333bc6b..9f4b87655613 100644
--- a/configs/vexpress_aemv8a_defconfig
+++ b/configs/vexpress_aemv8a_defconfig
@@ -1,3 +1,3 @@
CONFIG_ARM=y
-CONFIG_TARGET_VEXPRESS_AEMV8A=y
+CONFIG_TARGET_VEXPRESS64_AEMV8A=y
CONFIG_DEFAULT_DEVICE_TREE="vexpress64"
diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig
index 0035ccdaecd4..26cf7db47f84 100644
--- a/configs/vexpress_aemv8a_semi_defconfig
+++ b/configs/vexpress_aemv8a_semi_defconfig
@@ -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"
diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
index 027d78b59171..85894bedf8bd 100644
--- a/include/configs/vexpress_aemv8a.h
+++ b/include/configs/vexpress_aemv8a.h
@@ -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)
@@ -119,7 +119,7 @@
#define GICR_BASE (0x2f100000)
#else
-#ifdef CONFIG_BASE_FVP
+#ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
#define GICD_BASE (0x2f000000)
#define GICC_BASE (0x2c000000)
#else
@@ -191,7 +191,7 @@
#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" \
--
1.9.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [U-Boot] [PATCH 3/4] vexpress64: get rid of CONFIG_SYS_EXTRA_OPTIONS
2014-12-24 1:02 [U-Boot] [PATCH 3/4] vexpress64: get rid of CONFIG_SYS_EXTRA_OPTIONS Linus Walleij
@ 2014-12-26 18:04 ` Steve Rae
2014-12-29 21:29 ` Tom Rini
1 sibling, 0 replies; 3+ messages in thread
From: Steve Rae @ 2014-12-26 18:04 UTC (permalink / raw)
To: u-boot
Acked-by: Steve Rae <srae@broadcom.com>
On 14-12-23 05:02 PM, Linus Walleij wrote:
> 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.
>
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
> ---
> arch/arm/Kconfig | 14 +++++++++++++-
> board/armltd/vexpress64/Kconfig | 13 +++++++++++++
> configs/vexpress_aemv8a_defconfig | 2 +-
> configs/vexpress_aemv8a_semi_defconfig | 4 ++--
> include/configs/vexpress_aemv8a.h | 16 ++++++++--------
> 5 files changed, 37 insertions(+), 12 deletions(-)
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 2b0d2c933895..9a7e36570de5 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -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
> diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig
> index 7ebea6317f70..2343e717f121 100644
> --- a/board/armltd/vexpress64/Kconfig
> +++ b/board/armltd/vexpress64/Kconfig
> @@ -10,3 +10,16 @@ config SYS_CONFIG_NAME
> default "vexpress_aemv8a"
>
> endif
> +
> +if TARGET_VEXPRESS64_BASE_FVP
> +
> +config SYS_BOARD
> + default "vexpress64"
> +
> +config SYS_VENDOR
> + default "armltd"
> +
> +config SYS_CONFIG_NAME
> + default "vexpress_aemv8a"
> +
> +endif
> diff --git a/configs/vexpress_aemv8a_defconfig b/configs/vexpress_aemv8a_defconfig
> index b463a333bc6b..9f4b87655613 100644
> --- a/configs/vexpress_aemv8a_defconfig
> +++ b/configs/vexpress_aemv8a_defconfig
> @@ -1,3 +1,3 @@
> CONFIG_ARM=y
> -CONFIG_TARGET_VEXPRESS_AEMV8A=y
> +CONFIG_TARGET_VEXPRESS64_AEMV8A=y
> CONFIG_DEFAULT_DEVICE_TREE="vexpress64"
> diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig
> index 0035ccdaecd4..26cf7db47f84 100644
> --- a/configs/vexpress_aemv8a_semi_defconfig
> +++ b/configs/vexpress_aemv8a_semi_defconfig
> @@ -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"
> diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
> index 027d78b59171..85894bedf8bd 100644
> --- a/include/configs/vexpress_aemv8a.h
> +++ b/include/configs/vexpress_aemv8a.h
> @@ -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)
> @@ -119,7 +119,7 @@
> #define GICR_BASE (0x2f100000)
> #else
>
> -#ifdef CONFIG_BASE_FVP
> +#ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
> #define GICD_BASE (0x2f000000)
> #define GICC_BASE (0x2c000000)
> #else
> @@ -191,7 +191,7 @@
> #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" \
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* [U-Boot] [PATCH 3/4] vexpress64: get rid of CONFIG_SYS_EXTRA_OPTIONS
2014-12-24 1:02 [U-Boot] [PATCH 3/4] vexpress64: get rid of CONFIG_SYS_EXTRA_OPTIONS Linus Walleij
2014-12-26 18:04 ` Steve Rae
@ 2014-12-29 21:29 ` Tom Rini
1 sibling, 0 replies; 3+ messages in thread
From: Tom Rini @ 2014-12-29 21:29 UTC (permalink / raw)
To: u-boot
On Wed, Dec 24, 2014 at 02:02:59AM +0100, Linus Walleij wrote:
> 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.
>
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This breaks building of vexpress_aemv8a by itself, at least for me:
GEN include/autoconf.mk
In file included from ../include/common.h:18:0:
include/config.h:4:22: fatal error: configs/.h: No such file or directory
#include <configs/.h>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20141229/a41bcc34/attachment.pgp>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-12-29 21:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-24 1:02 [U-Boot] [PATCH 3/4] vexpress64: get rid of CONFIG_SYS_EXTRA_OPTIONS Linus Walleij
2014-12-26 18:04 ` Steve Rae
2014-12-29 21:29 ` Tom Rini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox