Cortex‐A55 in aarch32 - MarekBykowski/readme GitHub Wiki
-
fvp-baseplatform modelFVP_Base_RevC-2xAEMvAis ARM FastModels https://github.com/MarekBykowski/readme/wiki/ARM-Fast-Models - It is free of charge and can be downloaded form https://developer.arm.com/Tools%20and%20Software/Fixed%20Virtual%20Platforms/Arm%20Architecture%20FVPs
-
Yocto(meta-armlayers) supports out-of-the-box for building and running for thefvp-baseplatform model forarmv8.4-ainaarch64
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-baseinaarch32is in request then we build forarmv7aand run it on thefvp-basewith CPUs coming out of reset inaarch32. See parametercluster0.cpu2.CONFIG64=0passed to the model. You can also note from here an execution state is configured perCPU.
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
-
Cortex-A55isarmv8.2-a. We have a variant, managing on the git branches, in which Yocto supports forarmv8.2-a
The take-away from here is we have a model ready-for-use that supports development for Cortex-A55 in aarch32.
Stating that any proof-of-concept/request-for-change to the system behavior, eg. exception vectors, mmu, etc. can be implemented and test-run on the model.
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

(armds is not free and requests licensing)
To enable the fully fledged development for armv8a in either aarch64 or aarch32 we can connect the armds to to the fvp-model model. See an excerpt from it below