Feature Name
ARM architecture as a primary architecture.
Summary
Move ARM from "Secondary Arch" status to "Primary Arch" fully supporting software and hardware floating point architectures.
Owner
- Name: Dennis Gilmore
- Email: dennis@ausil.us
Current status
- Targeted release: Fedora 18
- Last updated: 2012-02-29
- Percentage of completion: 00%
Detailed Description
Fedora ARM supports arm and armhfp base arches, arm is for software floating point ABI, we compile all packages for armv5tel, and armhfp is for hardware floating pint ABI. Both sets of arches are 32 bit. There are no plans to support multilib or multiarch. Users will choose either hfp (Hardware Floating Point) or sfp (Software Floating Point). When the announced 64 bit harware and port shows up we will then bootstrap it from scratch and add it in a future fedora release. 64 bit support will be added without any multiarch or multilib support.
Benefit to Fedora
While traditionally ARM has been shipped in the millions of units for use in phones, tv's, tablets and a multitude of embedded tasks. its is currently moving into more mainstream computing tasks. There is devices like Genesi EfikaMX offerings , compulab trimslice that could be used for every day computing tasks, Panda Board , Beagle Board, and Origen Board that are development focused devices but can serve in many purposes, and of course there is higher profile arm developments OLPC XO- 1.75 and RasperryPI, along with many announced projects like the OLPC XO-3 tablet , HP Moonlight server project , Dell has indicated working on ARM add to that all the android based tablets and the work going on to make touch interfaces work in KDE and gnome there is a large number of readily available devices that that developers and users can use. In the OLPC and RasperrbyPI cases they both will be shipping with Fedora, while the PI will have other options available and there is nothing stopping anyone putting any other distro on there, both projects will result in millions of fedora users.
This is fully in line with Fedora goal of First, this is a upcoming and developing market, there are a lot of interesting things happening here and it is a challenge to us not only in terms of adding new architectures which really is the easy bit, but in what we ship and how we deliver things to people. different types of devices have different needs. development devices all boot from sd card so we would like ship a raw disk image that is dd'ed onto a sdcard inserted and booted, just like a livecd.
Scope
- We need to add enterprise class build hardware to the buildsystem. the systems we expect to soon be available are quad core with 4gb ram and local storage. we will likely be adding at least 50 systems as builders.
- we will also look at upgrading the storage for /mnt/koji to ensure room for growth
- We need to discuss with mirrors and let them know of our plans to add more arches
- Work with anaconda to start to support arm, especially on the appliance side since a large number of arm devices will not initially be viable traditional install targets
- Ensure that the kernel team has the man power to support ARM
- Work with QA to ensure ARM is integrated into the test matrices appropriately, provide additional manpower and hardware to ensure things are working.
- limited set of initially fully supported systems. increasing over time.
- initial platforms would be the
- Hardware floating point capable devices
- OLPC XO-1.75
- enterprise hardware that we will use as build servers.
- Panda, Beagle, and Origen Development boards.
- Trimslice and EfikaMX hardware.
- Software floating point capable only devices.
- raspberry pi
- most marvell kirkwood plug type devices ( eg guruplug, sheevaplug)
- Hardware floating point capable devices
- The arm team has no intention to support phones while it would be possible with a suitable UI its not at all envisioned as a target today
- Tablet hardware would be the next phase as both KDE and Gnome make tablet touch based UI's and the XO-3 development ramps up. there is also the plasma based spark tablet shipping soon that will be a good target for fedora.
- initial platforms would be the
- set a cutover date from secondary to primary.
- import all binaries from secondary?
- use secondary tree as external repo and do a mass rebuild of primary.
How To Test
User Experience
Running a fedora ARM system should give the same user experience as on x86 based arches. while installation will be different. qemu-system-arm is a viable option for those who do not have real hardware. See Documentation on using Fedora on ARM to get started.
Developer Experience
Developer should submit a build and have it build for i686, x86_64, armv5tel, armv7hl with the process being transparent.
Dependencies
- The biggest dependency is getting Enterpise class hardware
- Infrastructure support for hardware
- Releng work on redoing the release engineering processes
- Determining exactly what to ship, setting a multi release timeline for adding additional support.
Contingency Plan
Move support for arm as a primary arch to Fedora 19
Documentation
Release Notes
- Fedora 18 has added wide support for running on the ARM architecture.
- Suported arm hardware includes:
- Panda, Beagle, and Origen Development boards.
- Trimslice, and EfikaMX smarttop and smartbook.
- RaspberryPI
- OLPC XO-1.75
- Suported arm hardware includes:
- Documentation on using Fedora on ARM