Kernel

Revision 9 as of 2007-06-27 16:56:17

Clear message

Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

  • Launchpad Entry: mobile-kernel

  • Packages affected: linux-source-2.6.22, linux-ubuntu-modules-2.6.22

Summary

For the Ubuntu Mobile and Embedded project we will have a separate Gutsy kernel flavour. This flavour will specify a kernel configuration optimized for the smaller and more restricted hardware that is typically used by mobile and embedded devices.

Rationale

The generic kernel configuration is intended to cater for the wide variety of hardware devices found on desktop and laptop systems. As such, the configuration specifies a large variety of devices and subsystems (e.g. ATM, SCSI drivers, filesystems) which are not necessary for the UME project.

The UME flavour will have a reduced configuration which removes all unnecessary device drivers and subsystems.

Use Cases

Dave, an OEM vendor building mobile devices wants to use Ubuntu Mobile edition as the basis for his device operating system. He uses a copy of the UME kernel config and tailors it for the possible devices on the hardware he is using.

John, a developer, wants to ensure that UME fits in the least amount of flash memory possible. As such, he strips out all non-essential or impossible modules from his kernel, reducing the footprint.

Scott, a user wants to plug in a USB wireless card to his mobile device using UME. This is possible and works because the UME kernel config continues to support USB devices, since the mobile devices have USB ports.

Scope

The Gusty kernel build system already has the necessary infrastructure to handle different flavours. The aim of this work is to define the set of devices and subsystems which are definately not required for the UME, and to construct a customized kernel configuration accordingly.

Very little development work needs to be done for this.

Design & Implementation

A reduced-config UME flavour will be added to the i386 flavour. This flavour will have all unnecessary or impossible config options stripped out of it.

A new "lpia" arch will be added to the linux-image, linux-ubuntu-modules and linux-restricted-modules packages. The UME flavour will be added to these for the "lpia" arch specifically customized for the initially targetted devices.

Flavour-specific configurations will be added to the linux-image, linux-ubuntu-modules, and linux-restricted-modules package, in order to make it easier to build device-specific out of tree code for only one flavour.

Various third party patches may need to be applied for specific configs, for example from http://www.linuxpowertop.org/ or to add SDIO support to the mmc layer. These will be assessed by the Kernel Team on a case-by-case basis.

Outstanding Issues

Need to determine the unnecessary drivers and subsystems.

BoF agenda and discussion


CategorySpec