Differences

This shows you the differences between two versions of the page.

Link to this comparison view

beagleboneblack:bbb_aosp [2013/08/25 10:47] (current)
gtran created
Line 1: Line 1:
 +====== AOSP on BeagleBoneBlack ======
  
 +===== Download Sources =====
 +==== Bootloader ====
 +<code bash>
 +$ git clone http://​git.baylibre.com/​pub/​abailon/​u-boot-rowboat
 +$ cd u-boot-rowboat
 +$ git checkout boneblack_aosp_jb
 +</​code>​
 +=== Configuration ===
 +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":​
 +
 +replace ​
 +  #define CONFIG_MMC_FASTBOOT_DEV 1
 +by 
 +  #define CONFIG_MMC_FASTBOOT_DEV 0
 +  ​
 +==== Kernel ====
 +<code bash>
 +$ git clone http://​git.baylibre.com/​pub/​abailon/​am335x-kernel
 +$ cd am335x-kernel
 +$ git checkout v3.8.13-bone26
 +</​code>​
 +==== AOSP ====
 +Follow instructions from [[http://​source.android.com/​source/​downloading.html|AOSP]] to download AOSP sources.
 +Once sources are downloaded, go in WORKING_DIRECTORY and download BeagleBoneBlack device files:
 +<code bash>
 +$ cd device/​ti ​
 +$ git clone http://​git.baylibre.com/​pub/​abailon/​device-ti-beagleboneblack beagleboneblack
 +$ cd ../../
 +$ add_lunch_combo full_beagleboneblack-userdebug
 +</​code>​
 +
 +===== Build =====
 +==== Bootloader ====
 +<code bash>
 +$ 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-
 +</​code>​
 +
 +==== Kernel ====
 +<code bash>
 +$ 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
 +</​code>​
 +
 +==== AOSP ====
 +<code bash>
 +$ . build/​envsetup.sh
 +$ lunch full_beagleboneblack-userdebug
 +$ make
 +</​code>​
 +
 +===== Installation =====
 +==== First Installation ====
 +Prepare a mmc:
 +<code bash>
 +# 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
 +</​code>​
 +Copy u-boot on MMC:
 +<code bash>
 +$ cd u-boot-rowboat
 +$ cp u-boot.img MLO /​media/​boot/​
 +</​code>​
 +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:
 +<​code>​
 +Hit any key to stop autoboot: ​ 0
 +U-Boot# fastboot
 +Fastboot entered...
 +musb-hdrc: peripheral reset irq lost!
 +</​code>​
 +On host, install bootloader and spl using fastboot:
 +<code bash>
 +$ fastboot format oem
 +$ fastboot flash spl MLO
 +$ fastboot flash bootloader u-boot.img
 +$ fastboot reboot
 +</​code>​
 +
 +==== Installation ====
 +Run fastboot on your board.
 +
 +Install android:
 +<code bash>
 +$ fastboot flash userdata
 +$ fastboot flash cache
 +$ fastboot flashall
 +</​code>​
 +
 +The board reboot and after few minute, you will see Android desktop.
Recent changes RSS feed Creative Commons License Donate Minima Template by Wikidesign Driven by DokuWiki