Building L27.IS.2.M1 for PandaBoard, with USB camera support

From OMAPpedia

(Difference between revisions)
Jump to: navigation, search
(Initial page submission)
(Fix wrong base kernel commit-id to match L27.IS.2.M1 release. Commit-id was from u-boot, not kernel...)
Line 69: Line 69:
Apply these patches on top of the release's kernel base commit-id.
Apply these patches on top of the release's kernel base commit-id.
<pre>
<pre>
-
git checkout 8524c061c9bf47daf683a439e1daf5ba9e599dcd
+
git checkout 6925ea33846858fb0bcd427912a9508b79c0bac3
git am -3 <path-to-extracted-gzip-folder>/patches/kernel/*.patch
git am -3 <path-to-extracted-gzip-folder>/patches/kernel/*.patch
</pre>
</pre>

Revision as of 03:55, 12 April 2012

Contents

Introduction

These instructions complement the official release notes, but with a set of patches needed to get it running on PandaBoard, with a Logitech USB webcam.

Tested Environment

Steps

Prerequisites

First, download this file:

File:PandaUSBCam for27.IS.2.M1 v1.tar.gz

Next, take as a base these release notes:

http://omappedia.org/wiki/L27.IS.2.M1_OMAP4_Icecream_Sandwich_Release_Notes

L27.IS.2.M1 Release note changes

Downloading Release Software

Android Filesystem Sources

After the repo sync step, do the following steps:

cd ${MYDROID}/hardware/ti/omap4xxx
git am -3 <path-to-extracted-gzip-folder>/patches/mydroid/hardware/ti/omap4xxx/*.patch

Which should apply the following patches:

0001-CameraHAL-V4LCameraAdapter-Enables-USB-camera-basic-.patch
0002-CameraHAL-V4LCameraAdapter-co-exists-with-OMXCameraA.patch
0003-CameraHAL-V4LCameraAdapter-adding-capabilities.patch
0004-camera-SensorListener-Protect-from-NULL-pointer-dere.patch
0005-camera-V4LCameraAdapter-Remove-unneeded-ErrorUtils.h.patch
0006-HACK-camera-Just-enable-USB-camera-usecase.patch

Now, go to:

cd ${MYDROID}/device/ti/panda

Checkout this commit:

git checkout 83c631f431d69becbb9458d1d9a10e4fe8381415

And apply respective patches:

git am -3 <path-to-extracted-gzip-folder>/patches/mydroid/device/ti/panda/*.patch

Which should apply the following patches:

0001-Enable-Multimedia-features.patch
0002-Add-Camera-app-and-USB-camera-support-for-panda.patch

Kernel & Driver Sources

Apply these patches on top of the release's kernel base commit-id.

git checkout 6925ea33846858fb0bcd427912a9508b79c0bac3
git am -3 <path-to-extracted-gzip-folder>/patches/kernel/*.patch

Which should apply cleanly these 2 patches:

0001-panda_defconfig-Build-WLAN-as-module.patch
0002-panda_defconfig-Enable-V4L2-and-USB-UVC-camera.patch

Build Instructions

Building U-BOOT

Use:

make ARCH=arm omap4430panda_config

Building X-LOADER

Use:

make ARCH=arm omap4430panda_config

NOTE: Skip section "Signing X-LOADER for HS devices", as pandaboard is a GP device. Means no MShield security protection, so it doesn't require signed binaries.

Building Kernel

Use:

make ARCH=arm panda_defconfig

And after building the kernel, do:

cp arch/arm/boot/zImage ${MYDROID}/device/ti/panda/kernel

so it gets used in the .img generation.

Building Android Filesystem (AFS) with TI Codecs enabled

Use:

lunch full_panda-eng

And build with:

# For host with 4 CPUs:
make CC=gcc-4.4 CXX=g++-4.4 -j4

IMPORTANT: Build Camera.apk manually, since it doesn't seem to build with the main makefile, by doing:

cd $MYDROID
source build/envsetup.sh
cd packages/apps/Camera
mm

Then, repeat main make command shown above, to regenerate .img files.

Preparing target

Follow file "${MYDROID}/device/ti/panda/README", to prepare your board.

Feel free to share corrections/suggestions about this procedure, so it can be improved.

Known Issues

Missing Camera App

Camera.apk is not built by default, needs manual build. See instructions above.

Missing ducati_full_panda.tgz file

Release doesn't have any ducati images for panda, so you'll see this messages on lunch command:

tar (child): device/ti/proprietary-open/omap4/ducati_full_panda.tgz:
Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now

Ignore for now... Maybe we should try copying blaze_tablet's Ducati? (Untested)

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox