diff --git a/kas/fvp-baser-aemv8r64-bsp.yml b/kas/fvp-baser-aemv8r64-bsp.yml index 68712011..43ca36ac 100644 --- a/kas/fvp-baser-aemv8r64-bsp.yml +++ b/kas/fvp-baser-aemv8r64-bsp.yml @@ -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: diff --git a/meta-arm-bsp/conf/machine/fvp-baser-aemv8r64.conf b/meta-arm-bsp/conf/machine/fvp-baser-aemv8r64.conf index db8c4fe2..8646bdf3 100644 --- a/meta-arm-bsp/conf/machine/fvp-baser-aemv8r64.conf +++ b/meta-arm-bsp/conf/machine/fvp-baser-aemv8r64.conf @@ -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" diff --git a/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md b/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md index eeeb4fa0..0b34d7f9 100644 --- a/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md +++ b/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md @@ -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 diff --git a/meta-arm/recipes-devtools/fvp/fvp-base-r-aem.bb b/meta-arm/recipes-devtools/fvp/fvp-base-r-aem.bb deleted file mode 100644 index f21ccae3..00000000 --- a/meta-arm/recipes-devtools/fvp/fvp-base-r-aem.bb +++ /dev/null @@ -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") -} diff --git a/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb b/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb new file mode 100644 index 00000000..06bc370a --- /dev/null +++ b/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb @@ -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"