Since few days ago I was struggling with u-boot on banana pi m2+. That arm device has limited information. Even on their forum (forum.banana-pi.org). They has lot of information but not clearly understandable by beginner. Also many people complain it.
I was googling every document that contain any information about it. Then trying one by one until finally found this step.
First, you need to clone mainline u-boot’s repository.
git clone git://git.denx.de/u-boot.git --depth 1
You need to find useable config to build u-boot. You need to creat file configs/Sinovoip_BPI_M2_plus_defconfig with content from http://pastebin.com/A1n1ecmt. And this one will fail. Then I ask in Armbian Forum and got answer (https://github.com/igorpecovnik/lib/blob/master/patch/u-boot/u-boot-default/add-missing-h3-boards.patch#L46-L62). You need to use this line below on your config file:
CONFIG_DEFAULT_DEVICE_TREE="sun8i-h3-orangepi-pc"
From this, you can build the u-boot and write on sdcard with this command as example:
dd if=u-boot-sunxi-with-spl.bin of=/dev/mmcblk0 bs=1024 seek=8
You can test it and see what’s happen from USB Serial connected to your banana pi.