Skip to main content
  1. Blog
  2. Article

Victor Tuson Palau
on 7 March 2012

Improving Hardware Support in Ubuntu


Anthony Wong, Project Technical Lead at Canonical, presented our process for improving hardware support in Ubuntu at our 2011 Hardware Summit.  He did such a good job that I asked him to distill the essence of his presentation into a blog post. This is what he had to say:

Ubuntu has always been dedicated to providing a great user experience to support a wide variety of hardware on the desktop, by installing the necessary drivers seamlessly during the system installation. Having said that, there are lots of things happening behind the scene to deliver this level of hardware support that is among the best in Linux distributions.

Canonical has been working closely with many Original Equipment Manufacturers (OEMs) for several years in shipping Ubuntu on laptops, desktops and servers. Lots of hardware issues have been found and fixed so that all the major hardware in the machines can be operated correctly.

One of the missions of the Canonical Hardware Enablement (HWE) Team is to track and drive code changes from OEM enablement projects into future Ubuntu releases and upstream. We have a concept of n+1 fixes which we do our best to make sure that those bugs are corrected in our next (that is, n+1) release.

The following two diagrams illustrate how HWE collaborate with upstream maintainers and our kernel team in order to have code fixes flow from OEM projects to Ubuntu distribution and upstream (click on the images to enlarge).

The first scenario depicts the case that a hardware bug is found in an OEM enablement project and no known fix has yet existed.There are generally two ways we can proceed from here, one is to have our engineers develop a fix and submit to upstream, the other one is to report the issue to upstream and work with them until a fix is done, which can then be merged into our kernel. In the former case, once our fix is acknowledged by the upstream maintainers and committed to their git tree, we can then merge it into our n+1 kernel and update the current release via the Stable Release Update (SRU) process.

It’s not unusual to find that issues found in OEM projects have already been resolved in the latest code branches. We will usually verify if they have already been fixed in mainline or the n+1 kernel, and if they have, we will identify the related patches and provide them to the OEM team, and also backport them as SRU’s to the current release. The diagram below shows two cases of such scenario.

We aim to certify any OEM project (e.g. based on 11.10) with the next release of standard Ubuntu (e.g 12.04). 

For more information on how we engage with OEM/ODMs please visit odm.ubuntu.com

 

Related posts


Philip Williams
18 February 2026

Predict, compare, and reduce costs with our S3 cost calculator

Ceph Article

Previously I have written about how useful public cloud storage can be when starting a new project without knowing how much data you will need to store.  However, as datasets grow  over time, the costs of public cloud storage can become overwhelming.  This is where an on premise, or co-located, self-hosted storage system becomes advantage ...


Yanisa Haley Scherber
17 February 2026

A year of documentation-driven development

Ubuntu Article

For many software teams, documentation is written after features are built and design decisions have already been made. When that happens, questions about how a feature is understood or used often don’t surface until much later.  A little over one year ago, our team began to recognize this pattern in our own work. Features generally ...


Henry Coggill
17 February 2026

Announcing FIPS 140-3 for Ubuntu Core22

Hardening Article

FIPS compliance for IoT use cases in Federal space. In this article, we’ll explore what Ubuntu Core is, and how to use it with FIPS. ...