AOSP on BeagleBoneBlack

Download Sources


$ git clone
$ cd u-boot-rowboat
$ git checkout boneblack_aosp_jb


You can configure u-boot by editing By default, android will be installed on EMMC. If you want install it on MMC, in include/configs/am335x_evm.h”:






$ git clone
$ cd am335x-kernel
$ git checkout v3.8.13-bone26


Follow instructions from AOSP to download AOSP sources. Once sources are downloaded, go in WORKING_DIRECTORY and download BeagleBoneBlack device files:

$ cd device/ti 
$ git clone beagleboneblack
$ cd ../../
$ add_lunch_combo full_beagleboneblack-userdebug



$ cd u-boot-rowboat
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- distclean
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- am335x_evm_config
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-


$ cd am335x-kernel
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- am335x_android_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- zImage
$ cat arch/arm/boot/zImage arch/arm/boot/dts/am335x-boneblack.dtb > kernel_dtb
$ cp kernel_dtb $ANDROID_ROOT/device/ti/beagleboneblack/kernel


$ . build/
$ lunch full_beagleboneblack-userdebug
$ make


First Installation

Prepare a mmc:

# fdisk /dev/sd<device>
Command (m for help): o
Building a new DOS disklabel with disk identifier 0x1c99bf90.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 
Using default value 1
First sector (2048-15644671, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-15644671, default 15644671): +32M
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
# mkfs.vfat -n boot /dev/sdg1

Copy u-boot on MMC:

$ cd u-boot-rowboat
$ cp u-boot.img MLO /media/boot/

Insert your MMC on beagleboneblack and switch on your board (don't forget to push the boot switch button to boot on MMC). Interrupt the autoboot and run fastboot:

Hit any key to stop autoboot:  0
U-Boot# fastboot
Fastboot entered...
musb-hdrc: peripheral reset irq lost!

On host, install bootloader and spl using fastboot:

$ fastboot format oem
$ fastboot flash spl MLO
$ fastboot flash bootloader u-boot.img
$ fastboot reboot


Run fastboot on your board.

Install android:

$ fastboot flash userdata
$ fastboot flash cache
$ fastboot flashall

The board reboot and after few minute, you will see Android desktop.

beagleboneblack/bbb_aosp.txt · Last modified: 2013/08/25 16:47 by gtran
Recent changes RSS feed Creative Commons License Donate Minima Template by Wikidesign Driven by DokuWiki