If you are only interested in the kernel, you may use this guide to download and build the appropriate kernel.
The following instructions assume that you have not downloaded all of AOSP. If you have downloaded all of AOSP, you may skip the git clone steps other than the step to download the actual kernel sources.
We will use the Pandaboard kernel in all the following examples.
You will want to look at the git log for the kernel in the device project that you are interested in. Device projects are of the form device/<vendor>/<name>.
$ git clone https://android.googlesource.com/device/ti/panda $ cd panda $ git log kernel
The log should contain notes of the commit SHA1 for the appropriate kernel project. Keep this value at hand so that you can use it in a later step.
Depending on which kernel you want,
$ git clone https://android.googlesource.com/kernel/common.git $ git clone https://android.googlesource.com/kernel/exynos.git $ git clone https://android.googlesource.com/kernel/goldfish.git $ git clone https://android.googlesource.com/kernel/msm.git $ git clone https://android.googlesource.com/kernel/omap.git $ git clone https://android.googlesource.com/kernel/samsung.git $ git clone https://android.googlesource.com/kernel/tegra.git
goldfish
project contains the kernel sources for the emulated platforms.msm
project has the sources for ADP1, ADP2, Nexus One, and can be used as a starting point for work on Qualcomm MSM chipsets.omap
project is used for PandaBoard and Galaxy Nexus, and can be used as a starting point for work on TI OMAP chipsets.samsung
project is used for Nexus S and can be used as a starting point for work on Samsung Hummingbird chipsets.tegra
project is for Xoom, and can be used as a starting point for work on NVIDIA Tegra chipsets.exynos
project can be used as a starting point for work on Samsung Exynos chipsets.Ensure that the prebuilt toolchain is in your path.
$ git clone https://android.googlesource.com/platform/prebuilt $ export PATH=$(pwd)/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin:$PATH
As an example, we would build the panda kernel using the following commands:
$ export ARCH=arm $ export SUBARCH=arm $ export CROSS_COMPILE=arm-eabi- $ cd omap $ git checkout <commit_from_first_step> $ make panda_defconfig $ make
To build the tuna kernel, you may run the previous commands replacing all instances of “panda” with “tuna”.
device/samsung/tuna/kernel
device/samsung/crespo/kernel
device/moto/wingray/kernel
The image is output as arch/arm/boot/zImage
. You may copy it as device/<vendor>/<name>/kernel
or device/ti/panda/kernel
in the case of this example.