Architectures/ARM

From FedoraProject

< Architectures(Difference between revisions)
Jump to: navigation, search
(Release Development)
 
(147 intermediate revisions by 18 users not shown)
Line 1: Line 1:
 
{{shortcut|Arch:ARM}}
 
{{shortcut|Arch:ARM}}
{{lang|en|zh-cn|page=Architectures/ARM}}
+
{{shortcut|Arch:AArch64}}
  
 
{| style="width: 50%; float: right; margin-left: 2em;"
 
{| style="width: 50%; float: right; margin-left: 2em;"
 
|-
 
|-
| style="border-width: 0;" | {{admon/tip | Here are some links to help you get started with Fedora ARM, fast:|
+
| style="border-width: 0;" | {{admon/tip | Have a question? | Join the Fedora ARM team on IRC in [irc://irc.freenode.net/fedora-arm #fedora-arm] on [http://freenode.net Freenode]
 
+
[https://fedoraproject.org/wiki/Architectures/ARM/Fedora_17_GA Download] Fedora ARM now!
+
 
+
Includes support for [[Architectures/ARM/BeagleBoard-xM|Beagleboard-xM]], [[Architectures/ARM/Kirkwood|Dreamplug, Guruplug]], [[Architectures/ARM/Anaconda |Highbank]], [[Architectures/ARM/EFIKA_MX_Smarttop|iMX]], [[Architectures/ARM/Pandaboard|Pandaboard]], [[Architectures/ARM/Kirkwood|Sheevaplug]], [[Architectures/ARM/Trimslice|Trimslice]], [[Architectures/ARM/Versatile_Express|Versatile Express]] and more!
+
 
+
Have a question? Join the Fedora ARM team on IRC in [irc://irc.freenode.net/fedora-arm #fedora-arm] on [http://freenode.net Freenode]
+
 
}}
 
}}
 
|}
 
|}
Line 16: Line 10:
 
= Introduction =
 
= Introduction =
  
ARM chips are the most widely-produced processor family in the world; they have historically been used in cell phones and embedded applications, and are increasingly used in tablet devices and low-power-consumption servers.
+
Welcome to the architecture page for ARM. This covers both ARMv7 (aka armhfp and arm-32) and aarch64 (aka ARMv8 and arm-64).
 
+
The Fedora-ARM project is an initiative to bring Fedora to this processor family.
+
 
+
= Download the Current Release =
+
====Fedora 17 GA====
+
This is the most recent stable release of Fedora. These images have been tested and are recommended for most users and includes Versatile Express (QEMU), Trimslice, Beagleboard xM, Pandaboard, Kirkwood Plugs, Highbank and iMX based hardware platforms. The full release announcement can be found [[Architectures/ARM/Fedora_17_GA|here]].
+
Board specific images and installation instructions:
+
* [[Architectures/ARM/BeagleBoard-xM|Beagleboard-xM]]
+
* [[Architectures/ARM/Kirkwood|Dreamplug, Guruplug]]
+
* [[Architectures/ARM/EFIKA_MX_Smarttop|iMX]]
+
* [[Architectures/ARM/Pandaboard|Pandaboard]]
+
* [[Architectures/ARM/Kirkwood|Sheevaplug]]
+
* [[Architectures/ARM/Trimslice|Trimslice]]
+
For virtualization through QEMU:
+
* [[Architectures/ARM/Versatile_Express|Versatile Express]]
+
If you would like to provide your own kernel and just require a root file system:
+
 
+
Serial Console:
+
* [http://download.fedoraproject.org/pub/fedora-secondary/releases/17/Images/arm/Fedora-17-arm-console.tar.xz SFP Serial Image]
+
* [http://download.fedoraproject.org/pub/fedora-secondary/releases/17/Images/armhfp/Fedora-17-armhfp-console.tar.xz HFP Serial Image]
+
XFCE Desktop:
+
* [http://download.fedoraproject.org/pub/fedora-secondary/releases/17/Images/arm/Fedora-17-arm-xfce.tar.xz SFP XFCE Image]
+
* [http://download.fedoraproject.org/pub/fedora-secondary/releases/17/Images/armhfp/Fedora-17-armhfp-xfce.tar.xz HFP XFCE Image]
+
 
+
====Nightly Development Composes====
+
* [http://scotland.proximity.on.ca/arm-nightlies/ Current Snapshots ] including xzcat-able images.  Updated nightly.
+
====Release Archive====
+
* Previous Fedora ARM releases can be found in our[[Architectures/ARM/Archive/Releases| Release Archive]]
+
 
+
=Get Involved with Fedora ARM=
+
=== Communication ===
+
* Mailing list: [https://lists.fedoraproject.org/mailman/listinfo/arm arm@lists.fedoraproject.org] ([http://lists.fedoraproject.org/pipermail/arm/ archives])
+
* IRC: [irc://irc.freenode.net/fedora-arm #fedora-arm] on [http://freenode.net Freenode]
+
 
+
=== Meetings ===
+
* IRC: [irc://irc.freenode.net/fedora-meeting-1 #fedora-meeting-1] each Wednesday at 20:00 UTC (4PM EDT) on [http://freenode.net Freenode] ([https://fedoraproject.org/wiki/Architectures/ARM/Meetings/Archive/ archives])
+
 
+
* [[Architectures/ARM/Meetings/FUDCon Blacksburg 2012]]
+
 
+
= Development =
+
=== Planning ===
+
* [[Architectures/ARM/Planning/Primary|Draft Proposal for Primary Architecture Push]]
+
=== Resources ===
+
Detailed information on Fedora-ARM:
+
* [http://arm.koji.fedoraproject.org/koji/ Fedora ARM Koji (package builder) instance]
+
* [[Architectures/ARM/Package Maintainers|Information for Fedora package maintainers on getting your packages to work on ARM]]
+
* [[Architectures/ARM/Team and Developers|Information for Fedora-ARM team members (and prospective team members!) plus developers]]
+
* [[Architectures/Fedora_ARM_Kernel_Updates|Updating a Fedora Kernel on ARM Systems]]
+
* [[Architectures/ARM/Performance|Various tips and hacks to improve Fedora ARM performance]]
+
* [[Architectures/ARM/Archive|Resource Archive]]
+
 
+
===Release Development===
+
* F18 Release Criteria
+
** [[Architectures/ARM/Fedora_18_Alpha_Release_Criteria | Alpha Release Criteria]]
+
** [[Architectures/ARM/Fedora_18_Beta_Release_Criteria | Beta Release Criteria]]
+
** [[Architectures/ARM/Fedora_18_Final_Release_Criteria | Final Release Criteria]]
+
* F18 - Work in progress
+
** [[http://142.204.133.82/jon/koji/kc.f18.diff.html Koji status ARM vs PA]]
+
* Kernel Testing
+
** [[Architectures/ARM/Quality_Assurance/Kernel_Testing | F18 Kernel]]
+
* F17 - Complete - Released on June 19th, 2012
+
** [[Architectures/ARM/Fedora17_rawhide|Issues with Fedora 17 Rawhide mass rebuild]]
+
** [[Architectures/ARM/Quality_Assurance/2012-06-15-VFAD-Fedora_17_Test_Day | Fedora 17 RC1 VFAD Results]]
+
** [[Architectures/ARM/Quality_Assurance/2012-06-18-VFAD-Fedora_17_Test_Day | Fedora 17 RC2 VFAD Results]]
+
** [[http://142.204.133.82/jon/koji/kc.f17.diff.html Koji status ARM vs PA]]
+
** [[http://142.204.133.82/jon/koji/kc.f17-updates.diff.html Koji status ARM Updates vs PA]]
+
 
+
* Fedora 15: Complete, but notes below for reference.
+
** [[Architectures/ARM/Fedora15 HardFP Bootstrap|Fedora 15 Hardware Floating Point Bootstrap]]
+
** [[/F15_Koji_build|Building F15 in koji]] - progress and outstanding tasks
+
 
+
 
+
<!--
+
 
+
----
+
 
+
'''OLD PAGE CONTENTS HERE'''
+
-- page was renamed from ARM --
+
  
= Fedora ARM =
+
Fedora on ARM supports a wide variety of hardware from large enterprise aarch64 SBSA compliant hardware down to cheap single board computers (SBCs). We're primarily focused on Server, SBCs, IoT and other usecases that are similar to the Fedora Workstation / Server / Cloud that other Fedora architectures support.
  
This is the starting page for the Fedora port to the ARM architecture.
+
The Fedora software stack experience across both the 32 and 64 bit ARM architecture variants is very similar, and in most cases identical, to what you would find on any other Fedora architecture. We use solely upstream kernels and don't use different kernels for each different ARM device we support.
  
 +
= Getting started =
  
 +
The first starting point for ARM is the [[Architectures/ARM/F25/Installation | ARM Installation Guide]].
  
== Goals and Objectives ==
+
= Download =
  
The primary goal of this project is to provide support for ARM as a [[TomCallaway/SecondaryArchitectures|  secondary architecture]]  in Fedora.
+
== Current stable release ==
  
A secondary goal is to enable derivative distributions based on the Fedora package collection and repository that are more suitably optimized for embedded and mobile use-cases.
+
The current stable release for ARMv7 can always be found at the [https://arm.fedoraproject.org/ ARM Image landing page]
  
== Technical Approach ==
+
The current stable release for aarch64 can always be found at [https://alt.fedoraproject.org/alt/ Alternate Architectures landing page]
  
=== Native Compilation ===
+
== Current development releases ==
  
Fedora policy requires that packages be natively compiled. We use a cluster of ARM hardware and QEMU virtual machines to build the packages natively for ARM.
+
There are currently two development releases. Fedora 26 is in the stabilisation phase, Fedora rawhide (27) is in the development phase.
  
=== CPU and Architecture Target ===
+
= Supported Hardware and Devices =
  
The baseline ARM CPU architecture that we have chosen to support is ARMv5TE, Little Endian, Soft-Float, EABI. We believe that this provides a nice baseline and that the pre-built packages and root file system images. You should be able to use this on many of the modern ARM CPUs, including XScale, ARM926 and ARM-11, etc.
+
We support a wide variety of hardware and devices from numerous Single Board Computers (SBCs) like the Raspberry Pi 2 and 3 through to Chromebooks and SBSA compliant Servers.  
  
Although we do not provide such binaries, the sources also lend themselves for building for pre-ARMv5TE hardware. The same is true for big-endian CPUs.
+
Here is list of device pages based on device category or SoC:
  
=== Installer and Kernel ===
+
* [[Architectures/ARM/Raspberry_Pi|Raspberry Pi]]
 +
* [[Architectures/ARM/Chromebook|Chromebooks]]
 +
* [[Architectures/ARM/SBSA|SBSA aarch64 Servers]]
 +
* [[Architectures/ARM/96Boards|96Boards devices]]
 +
* [[Architectures/ARM/AllWinner|All Winner based devices]]
 +
* [[Architectures/ARM/mvebu|Marvell EBU based devices]]
 +
* [[Architectures/ARM/Tegra|nVida Tegra based devices]]
 +
* [[Architectures/ARM/iMX6|NXP i.MX6 based devices]]
 +
* [[Architectures/ARM/RockChips|RockChips based devices]]
 +
* [[Architectures/ARM/STi|STMicroelectronics based devices]]
 +
* [[Architectures/ARM/exynos|Samsing EXYNOS based devices]]
 +
* [[Architectures/ARM/TI|Texas Instruments based devices]]
  
We currently do not plan to provide an installer, ISO images, or a kernel. Unlike in the x86 world, different ARM CPU families require different kernel images. Likewise, it is not entirely clear whether it makes sense to provide an installer or ISO images.
+
We don't directly support devices such as phones and tablets but it's not to say that without the required kernel/bootloader know how that they don't work, it's just not our primary focus.
  
== Contribute ==
+
= Get Involved with Fedora ARM =
* This is a tracking page for packages requiring patching to build on ARM: [[Architectures/ARM/Packages_needing_patching]]
+
!-- * A list of builds that are failing on ARM architecture is maintained [http://arm.koji.fedoraproject.org/packages_to_be_fixed.html here]. It is a good starting point for anyone willing to contribute to the Fedora-ARM project. The list is updated daily. --
+
* We have a [[Architectures/ARM/TODO|TODO list]].
+
* Have a look at the [[Architectures/ARM/Credits| Credits page]]
+
* Fedora ARM is currently heavily driven by the Seneca Centre for Development of Open Technology (CDOT) at the School of Computer Studies at Seneca College, Toronto. More information about their status can be found in the [http://zenit.senecac.on.ca/wiki/index.php/Fedora_ARM_Secondary_Architecture CDOT ARM wiki]
+
  
=== How to get in touch? ===
+
== Communication ==
* The [https://admin.fedoraproject.org/mailman/listinfo/arm Fedora-ARM mailing list]  is available for both user and developer discussions.
+
* We also have an IRC channel #fedora-arm on Freenode.
+
* Frequent updates about the effort are available at [http://paulfedora.wordpress.com Paul Whalen's ARM blog]
+
* Some old postings from November 2009 and earlier are available at the [http://fedora-arm.blogspot.com Fedora-ARM blog]
+
  
=== Tracker Bugs ===
+
* Mailing list: {{fplist|arm}} ([https://lists.fedoraproject.org/archives/list/arm@lists.fedoraproject.org/ archives])
If excluding ARM architectures you need to make the bug block '''F-ExcludeArch-ARM'''
+
* IRC: {{fpchat|#fedora-arm}} on http://freenode.net
  
to see whats currently blocking visit [https://bugzilla.redhat.com/show_bug.cgi?id=F-ExcludeArch-ARM  Bugzilla ]
+
== Meetings ==
 +
* IRC: {{fpchat|#fedora-meeting-2}} Every Tuesday at 16:00 UTC.
  
If a bug is specific to ARM architectures make the bug blocking '''ARMTracker'''
+
== Scratch an itch ==
 +
All architectures are now integrated into the standard Fedora process. We don't diverge in any way. So without even realising everyone is already involved. To get involved in something more specific whether that's support for particular pieces of hardware or hardware feature, a particular piece of software, to help test or to scratch an itch a good spot to start is the mailing list or IRC channel.
  
to see not yet resolved issues visit [https://bugzilla.redhat.com/show_bug.cgi?id=ARMTracker  Bugzilla ]
+
== Bug Reporting ==
=== Package Maintainer Notes ===
+
Bugs should be reported against their prospective packages as per standard Fedora process. Add a blocker of "ARMTracker" which will link to our [https://bugzilla.redhat.com/show_bug.cgi?id=245418 ARM architecture tracker bug]. If the bug is on a pre release version of Fedora and you feel it's release affecting it might be considered a [[QA:SOP_blocker_bug_process|Blocker Bug]] or [[QA:SOP_freeze_exception_bug_process|Freeze Exception]] in which case it should be reported in the [https://qa.fedoraproject.org/blockerbugs/ QA Blocker bug app].
As part of setting up to be a package maintainer, you should have run fedora-packager-setup from the fedora-packager rpm. That will write secondary arch config files in ~/.koji. To kick off a build for a package you maintain, run:
+
<pre>
+
make SECONDARY_CONFIG="-c ~/.koji/arm-config" build
+
</pre>
+
  
To kick off a koji scratch build, run:
+
== Getting help with ARM build issues ==
<pre>
+
koji -c ~/.koji/arm-config build --scratch dist-f13 /path/to/srpm
+
</pre>
+
You can change the dist tag to the dist you want to target.
+
  
There is also a separate [http://arm.koji.fedoraproject.org/koji/ Fedora ARM Koji Webinterface].
+
[[Category:ARMv7]][[Category:AArch64]]
-->
+
 
[[Category:Arch-specific SIGs]][[Category:SIGs]]
 
[[Category:Arch-specific SIGs]][[Category:SIGs]]
 
[[Category:Fedora special-interest groups|ARM]]
 
[[Category:Fedora special-interest groups|ARM]]
[[Category:Fedora ARM]]
 
[[Category:Fedora ARM Hardware]]
 

Latest revision as of 14:24, 7 June 2017

Shortcut:
Arch:ARM
Shortcut:
Arch:AArch64
Idea.png
Have a question?
Join the Fedora ARM team on IRC in #fedora-arm on Freenode

Contents

[edit] Introduction

Welcome to the architecture page for ARM. This covers both ARMv7 (aka armhfp and arm-32) and aarch64 (aka ARMv8 and arm-64).

Fedora on ARM supports a wide variety of hardware from large enterprise aarch64 SBSA compliant hardware down to cheap single board computers (SBCs). We're primarily focused on Server, SBCs, IoT and other usecases that are similar to the Fedora Workstation / Server / Cloud that other Fedora architectures support.

The Fedora software stack experience across both the 32 and 64 bit ARM architecture variants is very similar, and in most cases identical, to what you would find on any other Fedora architecture. We use solely upstream kernels and don't use different kernels for each different ARM device we support.

[edit] Getting started

The first starting point for ARM is the ARM Installation Guide.

[edit] Download

[edit] Current stable release

The current stable release for ARMv7 can always be found at the ARM Image landing page

The current stable release for aarch64 can always be found at Alternate Architectures landing page

[edit] Current development releases

There are currently two development releases. Fedora 26 is in the stabilisation phase, Fedora rawhide (27) is in the development phase.

[edit] Supported Hardware and Devices

We support a wide variety of hardware and devices from numerous Single Board Computers (SBCs) like the Raspberry Pi 2 and 3 through to Chromebooks and SBSA compliant Servers.

Here is list of device pages based on device category or SoC:

We don't directly support devices such as phones and tablets but it's not to say that without the required kernel/bootloader know how that they don't work, it's just not our primary focus.

[edit] Get Involved with Fedora ARM

[edit] Communication

[edit] Meetings

[edit] Scratch an itch

All architectures are now integrated into the standard Fedora process. We don't diverge in any way. So without even realising everyone is already involved. To get involved in something more specific whether that's support for particular pieces of hardware or hardware feature, a particular piece of software, to help test or to scratch an itch a good spot to start is the mailing list or IRC channel.

[edit] Bug Reporting

Bugs should be reported against their prospective packages as per standard Fedora process. Add a blocker of "ARMTracker" which will link to our ARM architecture tracker bug. If the bug is on a pre release version of Fedora and you feel it's release affecting it might be considered a Blocker Bug or Freeze Exception in which case it should be reported in the QA Blocker bug app.

[edit] Getting help with ARM build issues