BeagleBone

Intro
=====
To be able to use BeagleBone board with the images generated by
Buildroot, you have to prepare the SDCard.

How to build it
===============

  $ make beaglebone_defconfig

Then you can edit the build options using

  $ make menuconfig

Compile all and build rootfs image:

  $ make

Result of the build
-------------------

After building, you should get a tree like this:

  output/images/
  ├── am335x-boneblack.dtb
  ├── am335x-bone.dtb
  ├── MLO
  ├── rootfs.ext2
  ├── u-boot.img
  ├── uEnv.txt
  └── zImage


Prepare your SDCard
===================

You need to prepare first partition in fat32 and marked as bootable,
and second where you will write rootfs.

Copy the files to boot partition

  $ cp MLO u-boot.img zImage uEnv.txt *.dtb /media/zzzzz

where /media/zzzzz is the mount point.
Then you need to write the rootfs image onto SDCard:

  # dd if=rootfs.ext2 of=/dev/xxxxx

where /dev/xxxxx is the second partition. Use:

  # fdisk -l

to check for correct one.

Finish
======

Unmount all mounted SDCard partitions and insert the card to BeagleBone.
Hold the "BOOT" button and apply power. Then release the "BOOT" button.
The output is available on the serial console.
