Android Port
These build steps assume that you have set up a basic AOSP build environment as described in the Android Open Source Project pages.
Hardware
The repository has been tested on and has configuration for the Samsung/Google Galaxy Nexus, which at the time of writing this is the reference platform for Android development. It should be fairly straightforward to port to a Pandaboard, and just a little less so for other devices with ALSA support (it's mostly a matter of making sure the mixer paths are correctly configured or adding appropriate ALSA UCM configuration).
Patches
The following patches need to be applied to the source:
bionic-limits.h-fix.patch: applies in bionic/ (submitted upstream)
bionic-un.h-fix.patch: applies in bionic/ (submitted upstream)
build-add-pulseaudio.patch: applies in build/
device-samsung-tuna-add-pulseaudio.patch: applies in device/samsung/tuna
(Optional) system-core-vmstat-fix.patch: applies in system/core. Fixes vmstat's -n parameter (submitted upstream)
androgenizer
Get androgenizer, build it, and make sure the binary is in your path.
Get the code
$ cd <path to android source>/external $ git clone git://git.collabora.co.uk/git/user/arun/android/pulseaudio-android pulseaudio $ cd pulseaudio $ git submodule init $ git submodule update $ cd ../..
Compile
$ (assuming you've run envsetup.sh and lunch from the AOSP build instructions here) $ export PATH=$PATH:/path/to/androgenizer $ make pulseaudio-aggregate-configure $ make
Running
There is a start-pulseaudio-android script for setting up the environment and starting up PulseAudio correctly in system mode.
Also included is an audio_test binary that can be used for playing back audio to PulseAudio or AudioFlinger.
Misc
That's about it. Instructions on pulling powertop into the build are TBF.
Information on the porting effort and some performance numbers is at this blog post.


