From Fedora Project Wiki

< Architectures‎ | ARM

Revision as of 09:04, 10 June 2011 by Jcm (talk | contribs)


NOTE: This is a draft page in progress.

We are currently engaged in early bootstrap of support for an ARMv7 "hardfp" (hardware floating point) version of Fedora 15. In addition to adding support for hardware floating point, this port makes a transition to newer variant of the ARM ABI (sometimes referred to as "EABI" informally, though that name does not exist any more in official terms), and in particular to a newer variant of the Procedure Calling Standard for ARM Architecture AAPCS. The newer ABI (as defined in section 6 of the AAPCS) uses floating point registers as part of the procedure calling interface. We will treat "armv7hl" (hardfp, little endian) as a new target architecture.

Hardware floating point

Hardware floating point in ARMv7 processors takes the form of the VFPv3 (Vector Floating Point version 3) co-processor, which is a modern vector processing unit unrelated to the original ARM FPU present or emulated in earlier ARM systems.

Work in progress

DJ Delorie has produced an excellent set of bootstrap scripts that can be checked out using git, and used to generate a root filesystem image usable as a chroot for on-target package builds. You can obtain partially bootstrapped rootfs archives produced by this script (and then archived). Once you have unpacked the rootfs, you can chroot into it from an ARMv7-compatible target running the existing F13 userspace with an ARMv7 compatible kernel (images are available for various boards). Inside the rootfs, take a look at /stage2/stage2, a script that can be run to build various target modules. This script (which is a copy of the stage2 script inside the bootstrap git repository) should be extended until it can support bootstrapping up to rpm-build.

For further information about using the bootstrap script, see the first [Architectures/ARM/Fedora15 HardFP Bootstrap Virtual FAD 20110610 ARM Fedora 15 HardFP Bootstrapping Activity Day].