From patchwork Wed Dec 24 01:02:59 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 42622 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-lb0-f200.google.com (mail-lb0-f200.google.com [209.85.217.200]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 81CE62188F for ; Wed, 24 Dec 2014 01:03:20 +0000 (UTC) Received: by mail-lb0-f200.google.com with SMTP id f15sf4607530lbj.7 for ; Tue, 23 Dec 2014 17:03:19 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:delivered-to:from:to:date:message-id:cc:subject :precedence:list-id:list-unsubscribe:list-archive:list-post :list-help:list-subscribe:mime-version:content-type :content-transfer-encoding:sender:errors-to:x-original-sender :x-original-authentication-results:mailing-list; bh=FO5lObx2QkSS/ti1BhcUAPb922CpWkxlCz9H3od8cGw=; b=k8B8Epu+5jIR8xTWZB1XMJ90Wig59O+s3Jq8ER6mHNOXPD1E+nguPAFkjALGY7lvlY VghJYEBkmuREm6ENVGQN6o/lJrZUFOikXLwxx5uN0UDI7MAkfKHJDfOQCKhXhfBdX4D+ eUjmSFSssoCeB8YPkS1Z0KoiErCW/s+ySt+GuDcqM+w+fUCZJ8eGwlNtiR3tm7JCEoUo j2x2B0gT5aC1K4x0BTvPdQXnYGVJDQAp9wRNidTebo0KxFAn368ePT+R7w6YgV2YfaTu tInsCwe4XQ9J8H+Ztw2AsiQgu1XFTmLoTRKWtX4751VAi90Uey+qSLDCcJtU8ZnR/7Af OTzw== X-Gm-Message-State: ALoCoQngArj7yDfzTmGscbbVDvXei+DIH6iF+aNpdwOARW9BFrnla3dQjYs96Pf1KXkcjxCrSqQ4 X-Received: by 10.180.89.211 with SMTP id bq19mr3142067wib.4.1419382999156; Tue, 23 Dec 2014 17:03:19 -0800 (PST) X-BeenThere: patchwork-forward@linaro.org Received: by 10.152.30.9 with SMTP id o9ls312737lah.29.gmail; Tue, 23 Dec 2014 17:03:18 -0800 (PST) X-Received: by 10.152.6.67 with SMTP id y3mr31325274lay.90.1419382998933; Tue, 23 Dec 2014 17:03:18 -0800 (PST) Received: from mail-la0-f53.google.com (mail-la0-f53.google.com. [209.85.215.53]) by mx.google.com with ESMTPS id rr7si24001267lbb.43.2014.12.23.17.03.18 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 23 Dec 2014 17:03:18 -0800 (PST) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.215.53 as permitted sender) client-ip=209.85.215.53; Received: by mail-la0-f53.google.com with SMTP id gm9so6479728lab.12 for ; Tue, 23 Dec 2014 17:03:18 -0800 (PST) X-Received: by 10.112.189.10 with SMTP id ge10mr30957026lbc.23.1419382998845; Tue, 23 Dec 2014 17:03:18 -0800 (PST) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.112.142.69 with SMTP id ru5csp1489148lbb; Tue, 23 Dec 2014 17:03:18 -0800 (PST) X-Received: by 10.180.11.98 with SMTP id p2mr47190714wib.22.1419382998162; Tue, 23 Dec 2014 17:03:18 -0800 (PST) Received: from theia.denx.de (theia.denx.de. [85.214.87.163]) by mx.google.com with ESMTP id la7si42770964wjc.139.2014.12.23.17.03.17; Tue, 23 Dec 2014 17:03:18 -0800 (PST) Received-SPF: none (google.com: u-boot-bounces@lists.denx.de does not designate permitted sender hosts) client-ip=85.214.87.163; Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 54A704B69C; Wed, 24 Dec 2014 02:03:17 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HTQPPgRj8s-5; Wed, 24 Dec 2014 02:03:17 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id BCE2F4B691; Wed, 24 Dec 2014 02:03:16 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 62EC24B691 for ; Wed, 24 Dec 2014 02:03:13 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1kK8OfpjhqZ8 for ; Wed, 24 Dec 2014 02:03:13 +0100 (CET) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from mail-la0-f49.google.com (mail-la0-f49.google.com [209.85.215.49]) by theia.denx.de (Postfix) with ESMTPS id 2EFEF4B68B for ; Wed, 24 Dec 2014 02:03:09 +0100 (CET) Received: by mail-la0-f49.google.com with SMTP id hs14so6388062lab.36 for ; Tue, 23 Dec 2014 17:03:08 -0800 (PST) X-Received: by 10.112.43.66 with SMTP id u2mr31684002lbl.35.1419382988857; Tue, 23 Dec 2014 17:03:08 -0800 (PST) Received: from localhost.localdomain (78-70-103-28-no184.tbcn.telia.com. [78.70.103.28]) by mx.google.com with ESMTPSA id q17sm5656991lal.2.2014.12.23.17.03.07 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 23 Dec 2014 17:03:08 -0800 (PST) From: Linus Walleij To: u-boot@lists.denx.de, Albert Aribaud , Steve Rae Date: Wed, 24 Dec 2014 02:02:59 +0100 Message-Id: <1419382979-8673-1-git-send-email-linus.walleij@linaro.org> X-Mailer: git-send-email 1.9.3 Cc: Tom Rini , u-boot-review@google.com Subject: [U-Boot] [PATCH 3/4] vexpress64: get rid of CONFIG_SYS_EXTRA_OPTIONS X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: , List-Help: , List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: linus.walleij@linaro.org X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.215.53 as permitted sender) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 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 --- 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" \