BeagleBoard/Poky
This page is about how to use Poky for BeagleBoard development.
Contents
Quick Start
# Get Poky svn co -r5728 http://svn.o-hand.com/repos/poky/trunk poky cd poky; export POKY=`pwd` # Get TI's overlay git clone git://github.com/mturquette/meta-texasinstruments.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 http://svn.o-hand.com/repos/poky/trunk 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://github.com/mturquette/meta-texasinstruments.git git checkout ddiaz/gitomapzoom
Configure
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/task-poky-tools.bb. This is needed for a Sato image.
Build
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
Deploy
You can find your binaries here: $POKY/build/tmp/deploy/images/.
cd $POKY/build/tmp/deploy/images/ ls -1s [ADD DIR LISTING HERE]
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.
Recipes
What are the most important recipes around here? Here's a list of them.
U-boot
A recipe for u-boot can be found here: $POKY/meta/packages/uboot/u-boot-omap3_git.bb. 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
Kernel recipe is $POKY/meta-texasinstruments/packages/linux/linux-beagle_git.bb. 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: http://github.com/felipec/linux-omap/tree/tidspbridge-stable/.
Bridge library
The API for accessing the Bridge driver is provided by this recipe: $POKY/meta-texasinstruments/packages/tidspbridge/tidspbridge-lib_git.bb. The code is taken from this GIT repository: http://git.omapzoom.org/?p=platform/hardware/ti/omap3.git. Of course, it requires the DSP Bridge driver, which is provided by the kernel.
TI's OpenMAX IL
The recipe for building TI's OpenMAX IL is located here: $POKY//meta-texasinstruments/packages/tiopenmax/tiopenmax_0.3.5.bb. This code is rather old. The goal is to use this GIT repository for OpenMAX: http://git.omapzoom.org/?p=platform/hardware/ti/omx.git, 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/gst-goo_5.14.bb
- $POKY/meta-texasinstruments/packages/gst-openmax/gst-openmax_git.bb
Other
Some other important recipes would be the following:
- $POKY/meta-texasinstruments/packages/images/omap-image-min-gst.bb
- $POKY/meta-texasinstruments/packages/images/omap-image-sato.bb
- $POKY/meta-texasinstruments/packages/tasks/task-omap-gst.bb