< BeagleBoard
Revision as of 09:51, 28 March 2009 by Mrchapp (talk | contribs) (add directory listing)
Jump to: navigation, search

This page is about how to use Poky for BeagleBoard development.

Quick Start

# Get Poky
svn co -r5728 poky
cd poky; export POKY=`pwd`

# Get TI's overlay
git clone git://
git checkout ddiaz/gitomapzoom

# Copy configuration
cp -p $POKY/meta-texasinstruments/conf/misc/local.conf $POKY/build/local.conf

# Build!
cd $POKY
source poky-init-build-env
bitbake omap-image-min-gst

Step by step

Download Poky

Get Poky.

svn co -r5728 poky
cd poky
export POKY=`pwd`

Why SVN if Poky already moved to GIT, you may ask. Well, we feel fond of that revision because we know it to work. Feel free try Poky's GIT or a newer SVN revision. In fact, you might want to take a look at Poky OMAP too.

Add Texas Instruments' overlay

cd $POKY
git clone git://
git checkout ddiaz/gitomapzoom


cd $POKY/build
cp -p $POKY/meta-texasinstruments/conf/misc/local.conf local.conf

Review the above file.

Fine tune

With newer kernels exmap complains about missing headers. For now, you can have the rest of the profiling tools by taking exmap-console and exmap-server out of "RDEPENDS_task-poky-tools-profile" in $POKY/meta/packages/tasks/ This is needed for a Sato image.


cd $POKY
source poky-init-build-env
bitbake omap-image-min-gst

Alternatively, you can build a complete Poky Sato image, though YMMV:

bitbake omap-image-sato


You can find your binaries here: $POKY/build/tmp/deploy/images/.

cd $POKY/build/tmp/deploy/images/
ls -1s
total 181056
 3452 modules-2.6.28-omap1-beagleboard.tgz
33320 omap-image-min-gst-beagleboard-20090327064222.rootfs.jffs2
27168 omap-image-min-gst-beagleboard-20090327064222.rootfs.tar.gz
    0 omap-image-min-gst-beagleboard.jffs2
    0 omap-image-min-gst-beagleboard.tar.gz
63300 omap-image-sato-beagleboard-20090327162651.rootfs.jffs2
51884 omap-image-sato-beagleboard-20090327162651.rootfs.tar.gz
    0 omap-image-sato-beagleboard.jffs2
    0 omap-image-sato-beagleboard.tar.gz
  148 u-boot-beagleboard-2008.10-rc2+r2+gitdcae48d0df9dd0367172677f8154eb2683de0865-r2.bin
    4 u-boot-beagleboard.bin
 1776 uImage-2.6.28-omap1+r0+git1764d8eef033d40c623e9a9a0dde455e59ac2149-beagleboard-20090327164249.bin
    4 uImage-beagleboard.bin

The kernel and u-boot can be copied to the boot partition on your MMC/SD card. Take the image tarball and untar it in the root partition of your MMC/SD card; also, untar the modules tarball on the root of your file system.


What are the most important recipes around here? Here's a list of them.


A recipe for u-boot can be found here: $POKY/meta/packages/uboot/ This comes from Poky. You can try with another recipe for u-boot as long as it works on the Beagle. See $POKY/meta-texasinstruments/conf/machine/beagleboard.conf if you want to change it.


Kernel recipe is $POKY/meta-texasinstruments/packages/linux/ This kernel, kindly forked by Felipec, is currently based on 2.6.28-omap1, with dspbridge patches on them. This is the GIT repository for it, see under the tidspbridge-stable branch:

Bridge library

The API for accessing the Bridge driver is provided by this recipe: $POKY/meta-texasinstruments/packages/tidspbridge/ The code is taken from this GIT repository: Of course, it requires the DSP Bridge driver, which is provided by the kernel.


The recipe for building TI's OpenMAX IL is located here: $POKY//meta-texasinstruments/packages/tiopenmax/ This code is rather old. The goal is to use this GIT repository for OpenMAX:, but that'll be later.

GStreamer plug-ins

Two sets of plug-ins can be used: gst-openmax and gst-goo. Both are included in the GStreamer task. Recipes for these are located here:

  • $POKY/meta-texasinstruments/packages/gst-goo/
  • $POKY/meta-texasinstruments/packages/gst-openmax/


Some other important recipes would be the following:

  • $POKY/meta-texasinstruments/packages/images/
  • $POKY/meta-texasinstruments/packages/images/
  • $POKY/meta-texasinstruments/packages/tasks/