Versatile Express
The Versatile Express family of development platforms provides users with a modular board design for use testing different ARM SOC design implementations. QEMU provides the ability to emulate ARM Versatile Express for Cortex-A9 on your desktop computer for easy experimentation!
Technical Specifications
- ARM Versatile Express for Cortex-A9
- 1GB RAM
- 10/100Mbit/s Ethernet
For more information on Versatile Express or QEMU visit their websites.
Running Fedora on QEMU
This page will give you detailed instructions for running Fedora 17 GA through QEMU. There are four images to choose from when using Versatile Express through QEMU - Hard and Soft Float Versatile Express Images that boot either to a serial console or the XFCE desktop environment. If your not sure which to use, likely you will want to download the Hard Float image. Each requires an external kernel and initrd with a good qemu-system-arm command line; all of which is provided in the boot directory of the kernel file link (or you can extract the files from the main image). This guide will assume you have downloaded both the kernel package and the image.
Download the image
The first step is to download the Fedora 17 image and optional kernel package for the image you wish to boot. (Note: The image also includes the kernel, but for ease of use has also been provided in a separate package)
- HFP Serial Console Image
- Optional Kernel package: Kernel
- SFP Serial Console Image
- Optional Kernel package: Kernel
- HFP XFCE Desktop Image
- Optional Kernel package: Kernel
- SFP XFCE Desktop Image
- Optional Kernel package: Kernel
Preparing the Image
Linux Users
Extract the downloaded Versatile Express image and kernel using the your graphical user interface or the following commandline option(note in this example we are using the HFP Image):
For the Serial Image:
unxz Fedora-17-armhfp-vexpress-mmcblk0.img.xz unxz Fedora-17-armhfp-vexpress-mmcblk0-kernel.tar.xz
For the XFCE Desktop:
unxz Fedora-17-armhfp-vexpress-xfce-mmcblk0.img.xz unxz Fedora-17-armhfp-vexpress-xfce-mmcblk0-kernel.tar.xz
Windows Users
QEMU is also available on Windows but is not yet covered in this guide. For more information on running QEMU on Windows please visit their website.
Using Fedora through QEMU
First you will need to install the ARM QEMU package (this example is using Fedora)
yum install qemu-system-arm
Once installed, change to the boot directory of the extracted kernel package:
cd armhfp-vexpress-mmcblk0/boot
From there execute the provided script. Depending on which option you selected for your download:
For serial console:
bash boot-vexpress vmlinuz-3.4.2-3.fc17.armv7hl initramfs-3.4.2-3.fc17.armv7hl.img /<path>/<to-image>/Fedora-17-armhfp-vexpress-mmcblk0.img
For XFCE Desktop:
bash boot-vexpress+x vmlinuz-3.4.2-3.fc17.armv7hl initramfs-3.4.2-3.fc17.armv7hl.img /<path>/<to-image>/Fedora-17-armhfp-vexpress-xfce-mmcblk0.img
Known Issues
- Yum requires the system time be correct for HTTPS to function. If yum updates are not working check your clock.
- Versatile Express images require the kernel parameter 'physmap.enabled=0' be passed to boot correctly. This is included in the boot-vexpress and boot-vexpress+x scripts.
- The tar.xz rootfs archives do not preserve SELinux information or file capabilities. If you use these to create your own filesystem image it is recommended that you switch SELinux to use warnings instead of enforcing for first boot, then relabel and reinstall packages that rely upon filesystem capabilities such as glibc-common and ping.
- Known release issues
Additional Support
There are Fedora ARM users all around the globe - if you need assistance, would like to provide feedback or contribute to Fedora ARM please visit us on the IRC - we can be found in #fedora-arm on Freenode. You can also contact us on the mailing list - arm@lists.fedoraproject.org