Skip to content
fat-tire edited this page Apr 8, 2011 · 5 revisions

Note: 2.6.32 for encore kernel wiki page is at https://github.com/verygreen/ti-omap-encore-kernel/wiki/encore-2.6.32.


This wiki is to track the current status of this tree (forked from ongoing TI omap 3 at git://git.omapzoom.org/kernel/omap.git branch p-android-omap-2.6.35

The goal of this work is to have 2.6.35 kernel working on Barnes&Noble Nook Color and to replace 2.6.29 kernel that originally came with it.

Works:

  • Display turns on, omapfb & console there, backlight works.
  • USB in peripheral mode works. Tested with android adb & gadget etherned driver
  • Accelerometer appears to work, events are reported
  • gpio buttons (volume, power & home) all report through the event interface
  • Battery driver finds battery and probably works
  • Charger driver probably works too. Initializes fine
  • Running Android binaries from Nook - works after the TLS register quirk (See below)
  • SD card and internal eMMC all work. Quirk to mirror original .29 kernel device ordering implemented.

Does not work:

  • Touchscreen driver initializes, but does not get any IRQs, as such no input from it is processed
  • Sound drivers and codecs - need to be ported to new API
  • SmartReflex - basic stuff initializes, need to fill in proper efuse values
  • USB OTG. works as a client, does not work in HOST mode - no voltage present on connector, need to look into it more.
  • Screen blanking does not happen, so I guess there are some PM bits still missing.

Unverified:

  • Wifi driver is there, initializes, but status is unknown
  • BT was not verified
  • DSP Bridge. Initializes, but unverified if it actually works.
  • PowerVR chip initializes, but is not verified to work.

TODO:

  • Verify that wifi works.
  • There is a new touchscreen driver that we need to adopt eventually.

Specific quirks

  • 2.6.35 has a reverted default for CONFIG_HAS_TLS_REG With nook-shipped kernels it's unset and with .35 it's set unconditioanlly which makes bionic libc used with Android to segfault on .35 by default. As a quirk I reverted the default for CONFIG_HAS_TLS_REG to be unset in our tree too. (commit 573b4c8b2517a35d0f552a8e254d0108653fcfa2)
  • Nook system board has external MMC wired in as MMC1 an internal as MMC2, so the actual mmc table in board file has them reverted to match original nook kernel enumeration.
Clone this wiki locally