From Fedora Project Wiki

Fedora 19 for ARM

The Fedora ARM team is pleased to announce that the Fedora 19 for the ARM Architecture is now available for download from:

<fix-me-path>

Fedora 19 for ARM includes two image types - one for use with platforms requiring a VFAT partition (such as Texas Instruments's OMAP4-based PandaBoard), the other for use with devices that boot from an EXT3/4 partition (such as CompuLab's Tegra2-based TrimSlice). For each of these image types, there are a number of images providing for a variety of desktop choices (including MATE, KDE, XFCE, LXDE, SOAS), as well as a minimal image that does not include the desktop. Any of these images can be used with QEMU on an x86_64 desktop to emulate a fully functional ARM environment.

For the CompuLab TrimSlice

IMPORTANT
You must use the latest Device Tree enabled U-Boot to boot the Fedora 19 Trimslice image, which you can find here. Failure to do so will result in a non-booting system.

Download the image of your choice for use with the TrimSlice:

TYPE= # options include KDE, LXDE, XFCE, SoaS, Mate and Minimal
wget <fix-me-path>Fedora-$TYPE-armhfp-19-1-sda.raw.xz

Copy the image to the intended media:

xzcat Fedora-$TYPE-armhfp-19-1-sda.raw.xz > /dev/<location-of-your-media> 

Insert into the TrimSlice and boot. Fedora will boot to an initial setup screen allowing you to create your user, set the root password and timezone.

For the Texas Instruments PandaBoard and PandaBoard ES

Download the image of your choice for use with the PandaBoard or PandaBoard ES.

TYPE= # options include KDE, LXDE, XFCE, SoaS, Mate and Minimal
wget <fix-me-path>Fedora-$TYPE-VFAT-armhfp-19-1-sda.raw.xz

Writing the image

There are two options for writing the image and preparing your media for boot. Below are step by step instructions on how to do it manually, or using a python script that will walk you through the process.

Manual

As root copy the image to this intended media (e.g. SD Card):

TYPE= # options include KDE, LXDE, XFCE, SoaS, Mate and Minimal
xzcat Fedora-OMAP-armhfp-19-Beta-1-sda.raw.xz > /dev/<location-of-your-media>

Once writing the image to the intended media (e.g. SD Card) has been completed, remove and reinsert the media into your host PC. You will need to copy some U-Boot bootloader files into place for booting the target system. The mount points in the example below are specific to Fedora 18 and may need to be adjusted for your host system:

USER= # replace with your user account name on the host PC
TARGET= #choose panda or panda_es 
sudo cp /run/media/$USER/__/usr/share/uboot-panda/{MLO,u-boot.bin,u-boot.img,uEnv.txt.$TARGET} /run/media/$USER/UBOOT/
mv /run/media/$USER/UBOOT/uEnv.txt.$TARGET /run/media/$USER/UBOOT/uEnv.txt
sync

You should now be able to remove the media from your host PC, insert into your device, and boot it. If you are using an image that provides a desktop, you will need to use a display to configure your user account, root password and timezone. For the minimal image, this is done in text mode over the serial console.

Arm-creator.py

Jon Chiappetta has simplied the process for creating a bootable image for the PandaBoard and PandaBoard ES. The script can be used from commandline or through a text menu that will allow you to choose the specific details for your device.

./arm-creator.py -h
Usage: ./arm-creator.py [-h --help] --install --image=/path/to/Fedora-ARM.img.xz [--board=<type>] --disk=/dev/...
Commandline
TYPE= # options include KDE, LXDE, XFCE, SoaS, Mate and Minimal
TARGET= #choose panda or panda_es 
./arm-creator.py --install --image=/path/to/Fedora-$TYPE-VFAT-armhfp-19-1-sda.raw.xz --board=$TARGET --disk=<path-to-media>
Text Menu
TYPE= # options include KDE, LXDE, XFCE, SoaS, Mate and Minimal
./arm-creator.py --image=/path/to/Fedora-$TYPE-VFAT-armhfp-19-1-sda.raw.xz

Additional information on arm-creator.py including usage can be found Here.

For Versatile Express Emulation with QEMU

No ARM hardware? No problem! Even without hardware, it is possible to run the Fedora 19 for ARM images using the QEMU emulator program. Any image can be used, and you can choose a script method or manual depending on your preference.

Manual Preparation

TYPE= # options include KDE, LXDE, XFCE, SoaS, Mate and Minimal
wget <fix-me-path>Fedora-$TYPE-armhfp-19-1-sda.raw.xz

Extract the image:

unxz Fedora-$TYPE-armhfp-19-1-sda.raw.xz

Mount the image and extract the kernel and initramfs for use with booting.

sudo kpartx -av Fedora-$TYPE-armhfp-19-1-sda.raw

Make a temporary mount point

mkdir /tmp/boot
sudo mount /dev/mapper/loop0p1 /tmp/boot
sudo cp /tmp/boot/initramfs-3.9.5-301.fc19.armv7hl.img .
sudo cp /tmp/boot/vmlinuz-3.9.5-301.fc19.armv7hl .

To boot:

sudo qemu-system-arm -machine vexpress-a9 -m 1024 -nographic -net nic -net user \
 -append "console=ttyAMA0,115200n8 rw root=/dev/mmcblk0p3 rootwait physmap.enabled=0" \
 -kernel vmlinuz-3.9.5-301.fc19.armv7hl \
 -initrd initramfs-3.9.5-301.fc19.armv7hl.img \
 -sd Fedora-$TYPE-armhfp-19-1-sda.raw \

For convenience you can also download a script for booting the system here. To run the script:

chmod 755 boot-vexpress
./boot-vexpress -h
Usage: ./boot-vexpress [--gui] --kernel=vmlinuz... --ramfs=initramfs --image=fsimage [--dtb=vexpress.dtb]

To boot the image:

sudo ./boot-vexpress --kernel=vmlinuz-3.9.5-301.fc19.armv7hl --ramfs=initramfs-3.9.5-301.fc19.armv7hl.img --image=Fedora-$TYPE-armhfp-19-1-sda.raw

Booting with device tree is possible, although passing --gui for graphics will not work at this time (this is due to ongoing platform reword occurring within the Versatile Express kernel code). Booting without device tree is recommended for F-19, as it will work in both serial and graphics mode, whereas passing a DTB will only work with serial.

livemedia-modifier

The livemedia-modifier tool written by Jon Chiappetta can be used to perform the above steps and is available here. After installing you can run the script using the following example:

# Extract the image
unxz Fedora-$TYPE-armhfp-19-1-sda.raw.xz
# Run livemedia-modifier
livemedia-modifier --image=Fedora-$TYPE-armhfp-19-1-sda.raw --platform=vexpress --nocompress

The modifier will create a copy of the original image, all changes will be made on the copy preserving the original image integrity.

Additional usage instructions can be found here.

Calxeda EnergyCore (HighBank)

Fedora 19 for ARM includes support for systems that are able to perform a network installation using a kickstart, including enterprise hardware such as the Highbank. A working kickstart can be found here.

For more detailed instructions on setting this up, please visit this page.

Known Issues