Kernel

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 two separate kernel flavours in Hardy - lpia (menlow) and lpiacompat (mccaslin). These flavours 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

Mini specs

Mobile Kernel - WLAN

mobile-kernel-wlan

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.

Mobile Kernel - WWAN

mobile-kernel-wwan

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.

Mobile Kernel - SDIO

mobile-kernel-sdio

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.

Mobile Kernel - Touchscreen

mobile-kernel-touchscreen

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.

Mobile Kernel - GPS

mobile-kernel-gps

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.

Mobile Kernel - Bluetooth

mobile-kernel-bluetooth

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.

Mobile Kernel - Poulsbo PCI IDs

mobile-kernel-poulsbo-pci-ids

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.

Mobile Kernel - HD Audio

mobile-kernel-hd-audio

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.

Mobile Kernel - UVC support

mobile-kernel-uvc

  • Overview: What is this activity about and why are we doing it?
  • Goal/Deliverables: What do we plan to achieve and what actual things will be released/deployed?
  • Full spec: Include if there is one, if not replace this text with "none"
  • Depends on: what does this mini-spec depend on? If n/a replace this text with "n/a"

We will know we have finished when ... - complete this sentence and leave in bold format.


CategorySpec

MobileAndEmbedded/Kernel (last edited 2008-08-06 17:00:14 by localhost)