Quick Guide

Let's assume that you're moving your first steps with DevelBoard EVA01. Once you have unpacked and connected via USB to your computer, create a new project to play with it:

$ mkdir myproj
$ cd myproj
$ git init
Initialized empty Git repository in ~/mkdocs/.git/
$ dboard init
Extracting image files...

Now, let's look at the layout of the myproj directory:

    .
    ├── images
    │   ├── DEVELBOARD_BLUE
    │   ├── at91-sama5d4_xplained.dtb
    │   ├── barebox.bin
    │   ├── barebox.env
    │   ├── develboard-nandflashboot-barebox.bin
    │   ├── develboard-sdcardboot-barebox.bin
    │   ├── rootfs.tar.gz
    │   └── zImage
    └── overlay

    2 directories, 8 files

As you can see, there are two top-level directories: images and overlay.

images contains all the files required to boot into a fully-functional Linux system on DevelBoard. A brief explanation of each file:

  • zImage is the Linux kernel image, which will be extracted by barebox during the boot process.
  • rootfs.tar.gz is the compressed root filesystem; again, this will be extracted by barebox alongside the system.
  • at91-sama5d4_xplained.dtb is the device tree blob, which contains information on all the peripherals on DevelBoard available to Linux.
  • barebox.bin is the second level bootloader
  • barebox.env is the compiled barebox configuration file
  • develboard-XXX-barebox.bin is used to discriminate between different boot mediums (NAND FLASH, SD Card etc.)

overlay will be used during the extraction of the root filesystem to overlap the content of this folder to the default filesystem. This is a quick way to create custom directory trees and to move files to DevelBoard, directly from the host PC.

Once our project is initialized, we can commit this first working environment:

$ git add *
$ git commit -m"Initial environment"

We are now ready to create an SD card containing all we need to boot into our system. This is really simple with dboard:

$ dboard makesd

The makesd command will look for any SD card connected to the host PC, ask the user to choose one and populate the card with all the files needed to boot from it.

Once it's finished, you can notice that the SD card will now contain a layout very similar to the images folder; also, a new folder will be created in images, containing the default barebox configuration.

At this point, you are ready to use the SD card. To boot from it, first connect EVA01 to the host PC, then use dboard to connect to it:

$ dboard serial

After selecting the correct serial port, wait for the barebox boot menu to appear. By default, DevelBoard is configured to run from FLASH (this default behavior can be changed as described here). To boot from SD card, select boot mmc from the boot menu.

The system should now boot correctly from the SD card.