mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-01-11 15:00:39 +00:00
arm/fvp-base-r-aem: Automatically download FVP tarball
The FVP_Base_AEMv8R tarball is now available to download directly from developer.arm.com without logging in. Therefore, remove the FVP_BASE_R_AEM_TARBALL_URI env var (and references in the documentation) and update the SRC_URI in the recipe. Move fvpboot and userNetPorts to the machine conf, now that the FVP configuration is no longer dependent on an external tarball. Clarify the currently supported FVP version in the documentation. Put the current PV in the recipe filename. Issue-Id: SCM-4304 Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> Change-Id: I776277c690bf4466445ca2df17eedb202f172f58 Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit is contained in:
@@ -25,7 +25,6 @@ repos:
|
||||
meta-poky:
|
||||
|
||||
env:
|
||||
FVP_BASE_R_AEM_TARBALL_URI: ""
|
||||
FVP_BASE_R_ARM_EULA_ACCEPT: "False"
|
||||
|
||||
local_conf_header:
|
||||
@@ -34,8 +33,6 @@ local_conf_header:
|
||||
PACKAGE_CLASSES = "package_ipk"
|
||||
PACKAGECONFIG:remove:pn-qemu-system-native = "gtk+ sdl"
|
||||
EXTRA_IMAGE_FEATURES:append = " debug-tweaks ssh-server-openssh"
|
||||
FVP_CONFIG[bp.virtio_net.hostbridge.userNetPorts] ?= "8022=22"
|
||||
IMAGE_CLASSES:append = " ${@oe.utils.ifelse(d.getVar('FVP_BASE_R_AEM_TARBALL_URI'), 'fvpboot', '')}"
|
||||
LICENSE_FLAGS_ACCEPTED:append = " ${@oe.utils.vartrue('FVP_BASE_R_ARM_EULA_ACCEPT', 'Arm-FVP-EULA', '', d)}"
|
||||
|
||||
target:
|
||||
|
||||
@@ -19,6 +19,7 @@ UBOOT_MACHINE ?= "vexpress_aemv8r_defconfig"
|
||||
|
||||
SERIAL_CONSOLES = "115200;ttyAMA0"
|
||||
|
||||
IMAGE_CLASSES:append = " fvpboot"
|
||||
IMAGE_FSTYPES += "wic"
|
||||
WKS_FILE ?= "efi-disk.wks.in"
|
||||
EFI_PROVIDER ?= "grub-efi"
|
||||
@@ -61,6 +62,7 @@ FVP_CONFIG[gic_distributor.has-two-security-states] ?= "0"
|
||||
FVP_CONFIG[pctl.startup] ?= "0.0.0.*"
|
||||
FVP_CONFIG[bp.virtio_net.enabled] ?= "1"
|
||||
FVP_CONFIG[bp.virtio_net.hostbridge.userNetworking] ?= "1"
|
||||
FVP_CONFIG[bp.virtio_net.hostbridge.userNetPorts] ?= "8022=22"
|
||||
FVP_CONFIG[bp.virtio_rng.enabled] ?= "1"
|
||||
FVP_CONFIG[bp.vis.rate_limit-enable] ?= "0"
|
||||
FVP_CONFIG[bp.refcounter.use_real_time] ?= "1"
|
||||
|
||||
@@ -27,6 +27,7 @@ The fvp-baser-aemv8r64 Yocto MACHINE supports the following BSP components,
|
||||
where either a standard or Real-Time Linux kernel (PREEMPT\_RT) can be built
|
||||
and run:
|
||||
|
||||
- FVP_Base_AEMv8R: v11.17.21
|
||||
- boot-wrapper-aarch64: provides PSCI support
|
||||
- U-Boot: v2022.01 - provides UEFI services
|
||||
- Linux kernel: linux-yocto-5.15
|
||||
@@ -104,20 +105,11 @@ is 3.0, install it like so:
|
||||
|
||||
For more details on kas, see https://kas.readthedocs.io/.
|
||||
|
||||
To build the images for fvp-base machine, you also need to:
|
||||
To build the images for the fvp-baser-aemv8r64 machine, you also need to accept
|
||||
the EULA at
|
||||
https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms/end-user-license-agreement-for-fixed-virtual-platforms
|
||||
by setting the following environment variable:
|
||||
|
||||
- download the ``FVP_Base_AEMv8R_11.17_21.tgz`` image AEM V8-R FVP Installer
|
||||
(Linux) package from Arm's website:
|
||||
https://silver.arm.com/download/download.tm?pv=4865959&p=4029857. You need
|
||||
to have an account and be logged in to be able to download it
|
||||
- set absolute path to the ``FVP_Base_AEMv8R_11.17_21.tgz`` downloaded
|
||||
package in ``FVP_BASE_R_AEM_TARBALL_URI``
|
||||
- accept EULA in ``FVP_BASE_R_ARM_EULA_ACCEPT``
|
||||
|
||||
|
||||
The variables should be set like so:
|
||||
|
||||
FVP_BASE_R_AEM_TARBALL_URI="file:///absolute/path/to/FVP_Base_AEMv8R_11.17_21.tgz"
|
||||
FVP_BASE_R_ARM_EULA_ACCEPT="True"
|
||||
|
||||
**Note:** The host machine should have at least 50 GBytes of free disk space
|
||||
@@ -142,14 +134,12 @@ Fetch the meta-arm repository into a build directory:
|
||||
Building with the standard Linux kernel:
|
||||
|
||||
cd ~/fvp-baser-aemv8r64-build
|
||||
export FVP_BASE_R_AEM_TARBALL_URI="file:///absolute/path/to/FVP_Base_AEMv8R_11.17_21.tgz"
|
||||
export FVP_BASE_R_ARM_EULA_ACCEPT="True"
|
||||
kas build meta-arm/kas/fvp-baser-aemv8r64-bsp.yml
|
||||
|
||||
Building with the Real-Time Linux kernel (PREEMPT\_RT):
|
||||
|
||||
cd ~/fvp-baser-aemv8r64-build
|
||||
export FVP_BASE_R_AEM_TARBALL_URI="file:///absolute/path/to/FVP_Base_AEMv8R_11.17_21.tgz"
|
||||
export FVP_BASE_R_ARM_EULA_ACCEPT="True"
|
||||
kas build meta-arm/kas/fvp-baser-aemv8r64-rt-bsp.yml
|
||||
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
require fvp-envelope.inc
|
||||
|
||||
SUMMARY = "Arm Fixed Virtual Platform - Armv8-R Base Architecture Envelope Model FVP"
|
||||
LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=1a33828e132ba71861c11688dbb0bd16 \
|
||||
file://license_terms/third_party_licenses.txt;md5=41029e71051b1c786bae3112a29905a7"
|
||||
|
||||
# This FVP cannot be downloaded directly, so download the Armv8-R Base AEM FVP
|
||||
# yourself from the homepage and set FVP_BASE_R_AEM_TARBALL_URI appropriately
|
||||
# (for example, file:///home/user/FVP_Base_AEMv8R_11.17_21.tgz).
|
||||
FVP_BASE_R_AEM_TARBALL_URI ?= ""
|
||||
PV = "11.17.21"
|
||||
|
||||
SRC_URI = "${FVP_BASE_R_AEM_TARBALL_URI};subdir=${BP}"
|
||||
python() {
|
||||
if not d.getVar("FVP_BASE_R_AEM_TARBALL_URI"):
|
||||
raise bb.parse.SkipRecipe("FVP_BASE_R_AEM_TARBALL_URI not set")
|
||||
}
|
||||
10
meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb
Normal file
10
meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb
Normal file
@@ -0,0 +1,10 @@
|
||||
require fvp-envelope.inc
|
||||
|
||||
SUMMARY = "Arm Fixed Virtual Platform - Armv8-R Base Architecture Envelope Model FVP"
|
||||
LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=1a33828e132ba71861c11688dbb0bd16 \
|
||||
file://license_terms/third_party_licenses.txt;md5=41029e71051b1c786bae3112a29905a7"
|
||||
|
||||
SRC_URI = "https://developer.arm.com/-/media/Files/downloads/ecosystem-models/${MODEL_CODE}_${PV_URL}.tgz;subdir=${BP}"
|
||||
SRC_URI[sha256sum] = "483ec3c2c6569e3e7e0c4c46329662c0d19475dee8e8947c24fa3de4b00da488"
|
||||
|
||||
MODEL_CODE = "FVP_Base_AEMv8R"
|
||||
Reference in New Issue
Block a user