Introduction
AArch64 is the name for the new 64-bit ARM architecture, also known as ARMv8 or ARM64. Hardware designed for this hardware specification is new, and still developing. If you have a piece of AArch64 hardware that is not currently supported by the project, please consider joining this SIG.
As this SIG grows, we'll provide as much documentation as we're able. Please keep an eye on the wiki pages and the mailing list below for more information.
Supported Hardware
1. Developmental Support
This hardware should work, but some features may not be enabled, and some applications such as virtualization may not work as expected.
As of the 7.4.1708 build, developmental support has been added for the Marvell Armada 7k/8k series boards. These are currently known to be missing some functionality, but we're working with Marvell to improve support.
2. Community Support
- Hikey
The Hikey from 96boards mostly works, but setup is complex. The installer currently cannot be used as one would traditionally expect.
- ODROID-C2
One of our community members has written a utility for the ODROID-C2 and other AArch64 boards that allows for use of the userspace tools with a vendor kernel. These boards are officially unsupported since we cannot provide updates for the kernel and dependent tools, however we do encourage community adoption and tinkering. The utility can be found at https://github.com/umiddelb/aarch64/wiki/Install-CentOS-7-on-your-favourite-ARMv8-ARM64-AArch64-board
Getting involved
The AArch64 effort is being done as a community SIG project. Everyone is welcome to participate. Please consider joining the Arm-Dev list to follow the development, contribute fixes, patches, documentation, etc.
We encourage vendors to come and join this effort, we have a lose organisation focused on the alternative architectures build process and welcome interaction at the group level. Please feel free to reach out either on the mailing list, or privately.
The wider CentOS Ecosystem is also welcome to engage with us, both at the project and code level. If you are working with a project that interfaces, manages or develops on top of CentOS, especially in the virtualization, cloud, container and infrastructure management areas - we would love to have you guys get involved. While we don't have a lot of resources, we are working with a few vendors to build up a community resource pool that we would encourage other projects to share their development, testing and delivery around CentOS Linux for AArch64.
Contributing Patches
As the AArch64 hardware ecosystem grows, we want to expand the hardware that we support. If you have a patch to enable additional hardware support in the kernel, we're happy to accept it provided it follows a few basic Guidelines. Other patches for bugs in applications will be reviewed and accepted on a case by case basis, provided they follow similar guidelines, and don't conflict with our upstream sources. If you have questions about patch generation, workflows, etc please feel free to ask either on irc or via the arm-dev mailing list.
* Guidelines for contributions.
1. Package Changes
Most packages are clean builds from either the c7 or c7-ppc64le branches in git.centos.org. Very few packages contain patches. They're noted below:
|
NOTE: This section may change periodically as patches are added or removed |
gcc |
Carries a patch to disable ada support. Ada bootstrapping is problematic. |
kernel |
4.2 based kernel-aarch64, branched from the rhelsa source, plus patches supplied by Applied Micro and Cavium |
docker |
Carries a specfile change to allow building with golang 1.5 |
cockpit |
Carries a specfile change to allow docker support |