Linux – How to create boot SD card for Banana Pi manually

embeddedlinuxu-boot

It seems that I have a lack of understanding how booting SD-Card images on devices like the Banana Pi work. The situation is as follows.

I have a Banana Pi and a Banana Pro. Every device has an image of some distribution on a SD card plugged into the device (Banana Pro -> Arch Linux, Banana Pi -> Bananian). The images can be downloaded from here and here. This works fine.

But since the Banana Pi / Pro has a SATA port, it would be nice if the root system could be booted from an attached Hard Drive. As can be read here this can be accomplished quite simple.

But now comes the part I'm struggling with. Flashing an entire 4GB SD card (or even larger ones) with the distributions image and using just a 50MB partition seems a bit wasteful. So I tried to use a smaller SD card.

I created a partiton with fdisk (50MB size) and used mkfs.vfat -F 16 /dev/sdXX to create the filesystem on the partiton. I made it FAT 16 because of the parted output while examining the image file.

enter image description here.

After that I mounted the partion from the image to /tmp/boot with sudo mount -o loop,offset=1048576 ArchLinux_For_BananaPro_v1412.img /tmp/boot. The offset value is the Start value in the parted output.

Copied the files (script.bin, uEnv.txt, uImage) to my SD card partition, changed the root path in uEnv.txt. Made a sync and dismounted the SD card.

Everything seems fine. Even when comparing the boot partitons on a SD card flashed with the entire image and my SD card with only the boot partiton, they are identical (according to fdisk)

enter image description here

But the Banana Pi / Pro won't boot with the SD card with just a boot partition providing the u-boot files.

Has anyone a clue on that behaviour?

UPDATE:

Thanks to @BananaFreak I recognized my mistake. The bootloader was indeed missing but even after following that guide from lemaker the BananaPro does not boot. One weird thing on the lemaker wiki page is the first sentence stating:

Note: these instructions are for a Linux computer, not the Banana Pro/Pi!!

Best Answer

I think you've missed bootloader. U-Boot has to be present on your SD. Take a look at how the SD layout should be for the Banana Pi / Pro:

http://wiki.lemaker.org/BananaPro/Pi:Setting_up_the_bootable_SD_card#SD_Card_Layout

Related Question