Building usbboot


I have mentioned usbboot in the post Install AOSP build to PandaBoard. In this post I show how you can tweak the usbboot utility and build it from source. I am running Ubuntu 12.04 within Parallels on a Mac.

To begin, clone omap4boot from GitHub.

Obtain toolchain

The build procedure requires the gcc cross-compiler for ARM. It can be obtained as follows

sudo apt-get install gcc-arm-linux-gnueabi

Build

Execute make

TOOLCHAIN=arm-linux-gnueabi- make

I had to patch the Makefile to avoid the following error

trusted.S:10: Error: selected processor does not support ARM mode `smc 1'

There is also an alternative patch.

Execute

It is rather straightforward to execute the newly baked usbboot. Here’s how you can use it in place of the binary that ships with AOSP

sudo <omap4boot folder>/out/panda/usbboot <aosp folder>/device/ti/panda/bootloader.bin

Unfortunately, still does not work with PandaBoard Rev A2.

Debug using serial port

The second stage loader that usbboot sends to PandaBoard writes some useful debug information to the serial port. You can view that information using a terminal emulator on Ubuntu

miniterm.py -b 115200 /dev/ttyUSB0

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s