How to Update U-Boot on Warp7 board
----------------------------------

Required software on the host PC:

- imx_usb_loader: https://github.com/boundarydevices/imx_usb_loader

- dfu-util: http://dfu-util.sourceforge.net/releases/ (if you are in a
Debian distribution then you can get it via libdfu-dev package)

- libusb: http://libusb.org/ (if you are in a Debian distribution
then you can get it via libusb-dev and libusb-1.0-0-dev)

In U-Boot folder, build U-Boot for Warp7:

$ make mrproper
$ make warp7_config
$ make

This will generate the U-Boot binary called u-boot-dtb.imx.

Put warp7 board in USB download mode: 

Remove the CPU board from the base board then put switch 2 in the upper
position

Connect a USB to serial adapter between the host PC and warp7

Connect a USB cable between the OTG warp7 port and the host PC

Copy u-boot-dtb.imx to the imx_usb_loader folder.

Load u-boot-dtb.imx via USB:

$ sudo ./imx_usb u-boot-dtb.imx

Then U-Boot should start and its messages will appear in the console program.

Open a terminal program such as minicom

Use the default environment variables:

=> env default -f -a
=> saveenv

Run the DFU command:
=> dfu 0 mmc 0

Transfer u-boot-dtb.imx that will be flashed into the eMMC:

$ sudo dfu-util -D u-boot-dtb.imx -a boot

Then on the U-Boot prompt the following message should be seen after a
successful upgrade:

#DOWNLOAD ... OK
Ctrl+C to exit ...

Remove power from the warp7 board.

Put warp7 board into normal boot mode (put the switch 2 in the lower position)

Power up the board and the new updated U-Boot should boot from eMMC
