Template:Container 3

From OMAPpedia

(Difference between revisions)
Jump to: navigation, search
m
m
 
Line 20: Line 20:
==Building Kernel==
==Building Kernel==
-
===For Blaze/OMAP4430===
+
===For PandaBoard===
 +
<source lang=bash>
 +
cd $MYDROID
 +
git clone git://gitorious.org/pandroid/kernel-omap.git
 +
cd $MYDROID/kernel-omap
 +
git checkout -b <my_L27.4_panda_branch_name> origin/L27.4_panda
 +
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- android_4430panda_defconfig
 +
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage
 +
</source>
 +
 
 +
===For Blaze===
====Get source====
====Get source====
-
For releases L27.x (Blaze/OMAP4430) onwards, the kernel source is not part of the Android manifest. To continue with getting started on Android and build your own binaries, if you are building a release that is not L27.x or above, skip this step.
+
For OMAP4430 releases L27.x (Blaze/OMAP4430) onwards, the kernel source is not part of the Android manifest. To continue with getting started on Android and build your own binaries, if you are building a release that is not L27.x or above, skip this step.
For L27.x(Blaze/OMAP4430), it is required to pull the source separately from the git tree.
For L27.x(Blaze/OMAP4430), it is required to pull the source separately from the git tree.
Line 55: Line 65:
  $ cd $MYDROID/kernel/android-2.6.32
  $ cd $MYDROID/kernel/android-2.6.32
  $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- modules
  $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- modules
-
 
-
===For PandaBoard===
 
-
<source lang=bash>
 
-
git clone git://gitorious.org/pandroid/kernel-omap.git
 
-
git checkout -b <my_L27.4_panda> origin/L27.4_panda
 
-
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- android_4430panda_defconfig
 
-
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage
 
-
</source>
 
===For Zoom 2/3===
===For Zoom 2/3===
Line 98: Line 100:
===Where to find uImage===
===Where to find uImage===
* "uImage" is available at:  
* "uImage" is available at:  
 +
** For PandaBoard
 +
$MYDROID/kernel-omap/arch/arm/boot
 +
** For releases L25.INC2.5 and higher
** For releases L25.INC2.5 and higher
  $MYDROID/omap/arch/arm/boot/
  $MYDROID/omap/arch/arm/boot/

Latest revision as of 18:58, 17 August 2010

Android Logov2.jpg
How to get started building your own binaries for the Android OS on your OMAP Platform
Overview Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8 Step 9

   

Step 3


The kernel consists of the uImage and related binaries. This page describes how to build the kernel depending on the Android release used. For more information on the Kernel project visit this page.

Contents

[edit] Building Kernel

[edit] For PandaBoard

cd $MYDROID
git clone git://gitorious.org/pandroid/kernel-omap.git
cd $MYDROID/kernel-omap
git checkout -b <my_L27.4_panda_branch_name> origin/L27.4_panda
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- android_4430panda_defconfig
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage

[edit] For Blaze

[edit] Get source

For OMAP4430 releases L27.x (Blaze/OMAP4430) onwards, the kernel source is not part of the Android manifest. To continue with getting started on Android and build your own binaries, if you are building a release that is not L27.x or above, skip this step.

For L27.x(Blaze/OMAP4430), it is required to pull the source separately from the git tree.

The below is an example to use the commit for L27.4

Repo   : git://git.omapzoom.org/kernel/omap.git
Branch : p-android-omap-2.6.32
Commit : android-2.6.32-2.1-omap4.4
Config : android_4430_defconfig

How to use the information above

If mydroid folder isn't already created, (it would have already been created if you followed "Android Environment - Source versions and Manifest" previously)

mkdir -p <your directory path>/mydroid

Then,

cd <your directory path>/mydroid
export MYDROID=`pwd`
git clone <Repo>
cd $MYDROID/kernel/android-2.6.32
git checkout <Commit>

To build kernel,

$ cd $MYDROID/kernel/android-2.6.32
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- distclean
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- android_4430_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage 

To build the kernel modules:

$ cd $MYDROID/kernel/android-2.6.32
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- modules

[edit] For Zoom 2/3

[edit] L25.10 and higher

$ cd $MYDROID/omap
$ make CROSS_COMPILE=<path to compiler>/arm-none-linux-gnueabi- distclean
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- zoom2_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage

Note: Configuration option varies by platform. Above is an example for building zoom2. Change "zoom2_defconfig" to "zoom3_defconfig" to enable a build for zoom3 (OMAP3630).


To build the kernel modules:

$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- modules

The output module for USB gadget is at:

$MYDROID/omap/drivers/usb/gadget/

[edit] Prior to L25.10

$ cd $MYDROID/kernel
$ make CROSS_COMPILE=<path to compiler>/arm-none-linux-gnueabi- distclean
$ make CROSS_COMPILE=arm-none-linux-gnueabi- omap_zoom2_android_defconfig
$ make CROSS_COMPILE=arm-none-linux-gnueabi- uImage

Note: Configuration option varies by platform. Above is an example for building zoom2. Change "omap3430zoom2_config" to "omap_ldp_android_defconfig" to enable a build for zoom1 (LDP).

For USB modules:

$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- modules

The output modules are at:

$MYDROID/kernel/drivers/usb/gadget/

[edit] Where to find uImage

$MYDROID/kernel-omap/arch/arm/boot
$MYDROID/omap/arch/arm/boot/
$MYDROID/kernel/android-2.6.29/arch/arm/boot/
$MYDROID/kernel/arch/arm/boot/



Left arrow1.png Android Logov2.jpg Right arrow1.png
Previous Home Next
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox