ARM

Revision 8 as of 2009-01-23 17:50:01

Clear message

ARM is a processor architecture used in a variety of applications, such as:

  • Handheld Computers (Nokia n8xx, Sharp Zaurus, etc.)
  • Network Devices (Thecus N series, Linksys NSLU2, etc.)
  • Project development boards (Gumstix, Beagleboard, etc.)
  • Subnotebooks (press releases indicate these will exist)

Ubuntu targets the ARM EABI, with an expectation of minimum compliance with the ARMv5t instruction set. Optimised libraries for ARMv6 and ARMv7 are expected to be available where there is significant performance gain.

Status

  • Several buildds have been installed, and are processing the queue
  • Kernels are being worked on for various targets, including -versatile (for QEMU)
  • Optimisation investigation is underway

FAQ

  • How do i build an armel rootfs from scratch

Please see the ARM/RootfsFromScratch page

  • How do I install Ubuntu on my device

Once enough of the archive is built, any of your favorite methods for installing Ubuntu should work for ARM, if your device can boot from CDROM or USB. If your device needs special processing, please check the manufacturer's documentation for installing linux.

  • How does this differ from Debian's armel port?

The primary difference is that Ubuntu targets a base of ARMv5t rather than a base of ARMv4t. As with the rest of Ubuntu, typically the source packages are identical, so the primary differences are the same as the differences between Debian and Ubuntu generally.

  • How does this differ from the work of mojo.handhelds.org

The primary differences are 1) Ubuntu uses "armel" as the architecture where mojo uses "arm" and 2) Ubuntu has a single architecture target where mojo may have several (e.g. armv5el-vfp vs. armv6el-vfp). The mojo team were clear leaders in this area, and the vast majority of patches (branding excepted) are high-priority review candidates for inclusion.

  • Where can I get help?

If it's ARM specific, stop by #ubuntu-arm on freenode. If it's not ARM specific, the regular Ubuntu support channels will provide better support.

  • What kernel flavours are available?

Currently, kernels are available for iop4xx, orion5x, iop32x, and versatile targets. Kernels are planned for omap targets.

  • What about VFP?

The base system build does not require VFP, so as to work on a wider variety of hardware. Libraries that show signfiicant improvement will have optimised VFP routines available.

  • How can I help?
    • As a user: Try Ubuntu ARM on your device. Report any bugs to https://launchpad.net/ubuntu/+bugs. Report working hardware to ARM/DeviceSupport

    • As a developer: Try Ubuntu ARM for your use case. Fix anything that doesn't work. Submit the patches for upload.
    • As a porter: Review applications not yet available for armel. Find out why. Port it, and submit the patches. Known issues are tracked at ARM/PortingIssues

    • As a tester: Try following the Ubuntu test cases on an ARM device. Report any regressions from other architectures.
    • As an author: Document installation procedures for various devices.