Discussing following topics in this session:

  • How can we better help drivers that Ubuntu is using that are in the /staging tree
  • Can we make an effort to clean up and help move the driver into mainline
  • If so what drivers etc...

Release Note



Ubuntu carries a number of staging drivers to support users hardware. Many of them won't compile or of a quality that leaves the user with a bad experience. Also the drivers receive less attention and may get improved over time because nobody looks at them either by using or trying to improve the code. What we need is to find a way to get together with the people originally doing those drivers or currently interested in them and think of steps to get drivers moved out of staging into the generic kernel space.

User stories

  • Bob has a notebook with the latest wifi card that does not have an in kernel supported driver. There is one in staging that works only until he suspends.
  • Song reported that T61P wifi which does not work in Intrepid works out-of-box on Jaunty. That is because of staging tree driver.


  • The kernel team has the communtiy developer support or enough Canonical kernel team cycles to help fix.


  • staging drivers are an effort to move new drivers into the kernel tree more quickly than it would otherwise be. ie. low quality drivers could get into the kernel and would at least be kept compiling and in line with API changes, and considered in the choices which are being made on those API's
  • there is little testing, and little review. if we care about a driver for Ubuntu, we may want to help to move those over main tree
  • so the main question is how can we engage with the community to help get those over into the main tree. who needs to help there, should there be some kind of offical community
  • also staging seems to have some resistance from upstream. where do patches go? via the mainline maintainers for the subsystem of via greg or fail? cleanups seem to go via greg and functionality may well want to go via the maintainers
  • what is the next step for wireless? wireless in staging are mostly junk, they will need more than a little love to get into the main wireless trees. some drivers have legal issues for contributers, some cannot work on the mainline drivers and therefore we are carrying two drivers
  • conflicting pressures there, a resource for information positive, but they are almost unmergable. biggest problem is manpower. cleanup may well be useful but not guarenteed that that will lead to a full merge
  • so what can we do to help? there is risk that staging means drivers are dumped and never fixed up. there is some hope of monetization here for OEM at least
  • ar9170 vs. otus: ar9170 doesn't have HT/11n implemented completely yet, but is a stable replacement for otus that integrates better into the system and e.g. doesn't need wpa_supplciant changes.
  • anyone we might want to apply to this, for wireless we would need very specific knowledge ie. someone who knows wireless. probably driven here by commercial interests of the manufacurer


  • identify those we care about (those enabled in jaunty) [ACTION: timg]
  • investigate the existing community, how we can interact successfully [ACTION: pgraner, jono]
  • can we find an existing community, or help create one [ACTION: pgraner, jono]



UI Changes

No UI changes should be required.

Code Changes




  • data migration, if any
  • redirects from old URLs to new ones, if any
  • how users will be pointed to the new way of doing things, if necessary.

Test/Demo Plan

It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release. Please add an entry to for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

Unresolved issues


BoF agenda and discussion

Use this section to take notes during the BoF; if you keep it in the approved spec, use it for summarising what was discussed and note any options that were rejected.


specs/KernelKarmicSponsoringStagingDrivers (last edited 2009-05-26 08:18:49 by 80)