Meego Wiki
Views
From MeeGo wiki
< ARM(Difference between revisions)
Jump to: navigation, search
(Kernel Sources)
(Undo spam revision 49837 by Tamekabegay (talk))
 
(17 intermediate revisions not shown)
Line 4: Line 4:
[http://nookdevs.com/Portal:NookColor NookDevs Nook Color Portal], good source of information
[http://nookdevs.com/Portal:NookColor NookDevs Nook Color Portal], good source of information
-
 
-
[http://www.meegoexperts.com/2011/06/nook-color-hacked-meego/ Novomok] have beaten the community to the punch with MeeGo on the Nook Color!
 
== Basic Nook Color Specs: ==
== Basic Nook Color Specs: ==
Line 18: Line 16:
* Power, Volume+, Volume-, and stylized "N" home button
* Power, Volume+, Volume-, and stylized "N" home button
* Headphone jack
* Headphone jack
 +
* USB Host support - Working in CM7 with 2.6.39 kernel and "Nook Tweaks" tool
 +
* Bluetooth -- Working in CM7 with 2.6.39 kernel
-
Hardware believed to be present, but not active
+
== Communication ==
-
* USB OTG support
+
-
* Bluetooth (some parts may not be wired out)
+
-
== Kernel Sources ==
+
All channels are on irc.freenode.net
-
B&N have posted the sources for their kernel, bootloader, and xloader, on their [http://www.barnesandnoble.com/nookcolor/legal/index.asp legal page], look for Attachments 1 and 2. Attachment 1 is the older 2.6.29 kernel, while Attachment 2 is the newer 2.6.32 kernel.
+
#meego, #meego-arm -- Future MeeGo discussion.
-
A project on Gitorious hosting these kernel sources (but not yet u-boot or xloader) is available: https://gitorious.org/meego-nook
+
== Novomok ==
-
Currently there is an official 2.6.32 kernel, along with a community attempted port to 2.6.35, as well as my port of those patches forward to 2.6.38, in an attempt to meet the MeeGo baseline of 2.6.37.
+
[http://www.meegoexperts.com/2011/06/nook-color-hacked-meego/ Novomok] had something going a few days after the 2011 San Francisco conference. They used a chroot to get stuff running.
-
A [http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-2.6.git;a=commit;h=2633af02b092975937209332f562451068fddea2 patch] by Oleg Drokin that adds board file, serial console, gpio keys, MMC/SDCard and USB (peripheral) support has been accepted upstream. So Nook Color support is now available in the [http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-2.6.git linux-omap-2.6]  git tree and will be eventually pushed to linux-2.6.
+
== Kernel Sources ==
-
Oleg patches its very bare minimal and a few kernel drivers still need to be pushed upstream. These drivers are in 2.6.32 Nook Color Android stock kernel provided with the B & N [http://images.barnesandnoble.com/PResources/download/Nook/source-code/nookcolor-source-code.zip source code] and in Oleg's Android kernel 2.6.35. If someone is interested in forward port a driver to linux-next, please put your name next to the driver you will be working on. Then others can focus in different drivers to avoid duplicated effort.
+
=== Vendor Sources ===
-
The drivers needed are:
+
B&N have posted the sources for their kernel, bootloader, and xloader, on their [http://www.barnesandnoble.com/nookcolor/legal/index.asp legal page], look for Attachments 1 and 2. Attachment 1 is the older 2.6.29 kernel, while Attachment 2 is the newer 2.6.32 kernel. Attachments 3 and 4 are for more recent builds of the Nook OS.
-
*Encore charger and battery [https://github.com/verygreen/ti-omap-encore-kernel/commit/02099fe0a95eed68752d2d3eba9b3412ec8d1893 drivers] (max17042).
+
=== Community Sources ===
-
*Kionix KXTF9 tri-axis digital accelerometer [https://github.com/verygreen/ti-omap-encore-kernel/commit/e22a1a028cd517be46315bb953f0b262c426e4eb driver]
+
-
*Cypress (TTSP) I2C touchscreen [https://github.com/verygreen/ti-omap-encore-kernel/commit/27419caf66ed159548650e6fea6733744958e6ea driver]
+
-
*Wifi [https://github.com/verygreen/ti-omap-encore-kernel/commit/e2a71aa21d9dba6ba0d5a40d6123394aa09bfa19 driver]
+
-
== Status ==
+
Existing community [[Nook Color Kernel Sources]], attempting to clean the kernel up and push boards upstream
-
At this point 2.6.38 with drivers and board support files ported forward compiles silently, but does not activate the screen thus giving no useful output. With 2.6.32 and 2.6.29 it is possible to boot up to the login prompt (Xorg must be disabled, or the device will not give any indication of having booted.)
+
With the realization that we can boot on 2.6.32, [https://github.com/dalingrin/nook_kernel Dalingrin's kernel] is currently our base.
 +
 
 +
== Adaptation Patches ==
 +
 
 +
[https://gitorious.org/mer-nook-compat Nook Hardware Adaptation for Mer]
== Getting Started ==
== Getting Started ==
Line 52: Line 51:
=== Creating a Bootable Card ===
=== Creating a Bootable Card ===
-
The card I created is based off of one of the Clockwork Recovery images, in particular a 4GB image reworked to boot MeeGo from the SD Card.
+
A baseline .ks can be found [http://pastie.org/pastes/2956301/text here], which builds a 3 partition, ~4GB disk image that the OMAP3 will correctly boot from.
-
 
+
-
The simplest format is as follows, created using parted:
+
-
 
+
-
<code>
+
-
Number  Start  End    Size    Type    File system  Flags
+
-
1      32.3kB  74.0MB  74.0MB  primary  fat16        boot, lba
+
-
2      74.4MB  331MB  257MB  primary  ext2
+
-
3     331MB  4428MB  4097MB  primary  ext2
+
-
</code>
+
-
 
+
-
==== Partition 1 ====
+
-
*mlo -- Not sure, haven't touched it
+
-
*u-boot.bin -- u-Boot binary, rebuilt to present a new command line to the kernel on startup
+
-
*uImage -- u-Boot prepared kernel image
+
-
*uRamdisk -- Rebuilt image to disable the internal init
+
-
 
+
-
==== Partition 2 ====
+
-
Empty, probably not necessary
+
-
 
+
-
==== Partition 3 ====
+
-
MeeGo root filesystem
+
=== Building the Kernel ===
=== Building the Kernel ===
-
The [http://nookdevs.com/NookColor:_Build_the_Original_Kernel Nook Devs] instructions will suffice for building a proper uImage. I will post the source of my u-Boot shortly.
+
The [http://nookdevs.com/NookColor:_Build_the_Original_Kernel Nook Devs] instructions will suffice for building a proper uImage.
=== Debug ===
=== Debug ===
-
[http://nookdevs.com/NookColor:_Nookie_Froyo_Technical_Page Tech docs @ NookDevs]. There is apparently a way to get RS232 out over the USB port, if you disable USB and enable the output in u-Boot.
+
Currently it's mostly trial and error. There are two UARTs on the board, one via the USB port that is disabled if the kernel initializes USB, the other via 4 test points on the (facing the screen) right edge of the PCB. They are 1.8v, and consist of RX, TX, VCC, and Ground.
-
 
+
-
== Source Code ==
+
-
 
+
-
If you happen to come across any source code, patches, or the like (that are open source) then please let me (wmarone) know so they can be consolidated in a repository on Gitorious. Passing binaries and source code around using mediafire or other download sites just isn't right.
+

Latest revision as of 18:58, 12 April 2012

The Nook Color is an OMAP3621 based 7" tablet produced by Barnes and Noble as an lcd-based e-Reader. At the same time, it serves as quite a handy target for MeeGo due to the similar SoC.

Nook Color Official Site

NookDevs Nook Color Portal, good source of information

Contents

Basic Nook Color Specs:

  • OMAP3621 SoC @ 800MHz
    • PowerVR SGX 530
    • Differs from the 3630 by having the camera support logic disabled
  • 512MB RAM
  • 8GB internal storage
  • microSDHC slot
  • 7" IPS panel
  • Power, Volume+, Volume-, and stylized "N" home button
  • Headphone jack
  • USB Host support - Working in CM7 with 2.6.39 kernel and "Nook Tweaks" tool
  • Bluetooth -- Working in CM7 with 2.6.39 kernel

Communication

All channels are on irc.freenode.net

  1. meego, #meego-arm -- Future MeeGo discussion.

Novomok

Novomok had something going a few days after the 2011 San Francisco conference. They used a chroot to get stuff running.

Kernel Sources

Vendor Sources

B&N have posted the sources for their kernel, bootloader, and xloader, on their legal page, look for Attachments 1 and 2. Attachment 1 is the older 2.6.29 kernel, while Attachment 2 is the newer 2.6.32 kernel. Attachments 3 and 4 are for more recent builds of the Nook OS.

Community Sources

Existing community Nook Color Kernel Sources, attempting to clean the kernel up and push boards upstream

With the realization that we can boot on 2.6.32, Dalingrin's kernel is currently our base.

Adaptation Patches

Nook Hardware Adaptation for Mer

Getting Started

The Nook Color has a particularly well done boot sequence, in that it will default to boot from the SD card slot if plugged into a PC and powered on with a bootable card inserted.

Creating a Bootable Card

A baseline .ks can be found here, which builds a 3 partition, ~4GB disk image that the OMAP3 will correctly boot from.

Building the Kernel

The Nook Devs instructions will suffice for building a proper uImage.

Debug

Currently it's mostly trial and error. There are two UARTs on the board, one via the USB port that is disabled if the kernel initializes USB, the other via 4 test points on the (facing the screen) right edge of the PCB. They are 1.8v, and consist of RX, TX, VCC, and Ground.

Personal tools