fvp‐base SW stack - MarekBykowski/readme GitHub Wiki

Intro

  • by default Yocto (meta-arm) for the fvp-base platform model builds the SW for fvp-base armv8.4-a supporting aarch64. Whenever referenced fvp-base it is silently fvp-base-arm64 (see cluster0.has_arm_v8-4=1 for the version support below)
FVP_Base_RevC-2xAEMvA
...
--parameter bp.secureflashloader.fname=bl1-fvp.bin
--parameter bp.flashloader0.fname=fip-fvp.bin
--parameter bp.virtioblockdevice.image_path=core-image-minimal-fvp-base-arm32-20250630100348.rootfs.wic
--parameter cluster0.has_arm_v8-4=1
  • if fvp-base in aarch32 requested then we build for armv7 and run it on fvp=base-arm32. Note --parameter cluster0.cpu2.CONFIG64=0
FVP_Base_RevC-2xAEMvA
...
--parameter bp.secureflashloader.fname=bl1-fvp.bin
--parameter bp.flashloader0.fname=fip-fvp.bin
--parameter bp.virtioblockdevice.image_path=core-image-minimal-fvp-base-arm32-20250630100348.rootfs.wic
--parameter cluster0.has_arm_v8-4=1
--parameter cluster0.cpu2.CONFIG64=0
  • I have a variant, different branches on the git repo, in which Yocto supports for armv8.2-a

Quickly build and run BSP on fvp-base

Clone meta-arm and poky

cd <your_path>
git clone -b arm-aem-scarthgap https://github.com/MarekBykowski/meta-arm.git
git clone -b arm-aem-scarthgap https://github.com/MarekBykowski/poky.git

Build

cd <your_path>/poky
source oe-init-build-env arm-aem-build
bitbake core-image-minimal

Run

cd <your_path>/poky
source oe-init-build-env arm-aem-build
./run.sh

image

See all the params of the model

FVP_Base_RevC-2xAEMvA --list-params yields the all the params of the model

Migration of the SW stack of fvp-base to support armv9

As of now the Yocto folks do not support armv9. And have no plans as of now.

https://lists.yoctoproject.org/g/meta-arm/topic/107945635#msg5965

My off work project is to add it in.

Building for other FastModels platforms.

To build the SW components for foundation_armv8 (jointly reffered to as FastModels) follow README. It is been bit obsolete now, so not sure what works, doesn't, is isn't available from there.

Extra test/training layer

Add extra training layer to conf/bblayers.conf in your build dir

${YOCTOROOT}/../meta-arm-training

When you make any changes to BSP components and want to rebuild it is enough to

bitbake trusted-firmware-a

See u-boot's config

bitbake -c listtasks u-boot
bitbake u-boot -c showconfig

Other .config plays are described here https://github.com/MarekBykowski/meta-cxl/wiki/kernel-.config-in-Yocto

BSP components for armv8.2-a arm64

u‐boot
u-boot-32bit
Linux kernel

⚠️ **GitHub.com Fallback** ⚠️