December 13, 2019, 11:49:49 pm

News:

Have you visited the Allwinner Chipset wiki? - http://linux-sunxi.org/


Can _NOT_ make SD card boot work!

Started by golfsmith, February 08, 2014, 01:51:12 pm

Previous topic - Next topic

golfsmith

Hi,

I am new to cubie and just got a cubie1 to play with. I tried following to boot from Micro SD card and it didn't work. The card is 16G.
First I downloaded cb_a10_lubuntu12.04_v1.04.img. Then I tried both win32diskimager and unetbootin tool from my Windows8 machine. Both fail to boot and cubie always drop in Android.

I think this is very basic stuff and couldn't figure out anything wrong with it. Can someone help me here?

thanks

Derek

patwood

Are you writing the .img to the entire card (i.e., overwriting the boot sector) or to the first partition?  These images are like .iso files for CD-ROMs and DVDs -- the data represents a snapshot of an entire card starting at the very first byte.

golfsmith

I don't see any options in both win32diskimager and unetbootin tools to choose where to write the image. so I just use the default. I even tried the image from a regular laptop computer and at least it started try to boot so I believe the write of the image to cubie is correct. The problem now seems to be why cubie doesn't even try to boot from the micro sd card? Is there something I need to do on the cubie itself to make it boot from sd card?  thanks!

patwood

Quote from: golfsmith on February 08, 2014, 10:46:10 pm
The problem now seems to be why cubie doesn't even try to boot from the micro sd card? Is there something I need to do on the cubie itself to make it boot from sd card?  thanks!

No, the Allwinner chips have a specific boot sequence, and they check the SD card for a bootable image first, before checking the internal nand flash.  If you've got a bootable SD card, that's what it'll boot from.

One thing people have noticed is sometimes the card slot has dust in it (give it a good blow of compressed air) and sometimes the card doesn't quite make contact (slide a piece of paper on top of the card).

beerstein

Hi: I suggest using a Linux (live CD) - run a linux such as Puppy, Slitaz or TinyCore and use the following  in command llne:

$ sudo dd bs=1M of=name_of_image.img of=/dev/sdx

where x is name of the memory device - not a partition of a device. In my case the sd card shows up as
/dev/sdc (using gparted)
As far as I know the dd command above writes the image to the usd card starting at the first sector of sd card until the end of the image. Just google that stuff to get more info. (keywords: linux commad line dd image .img sd card etc)

rose28357

February 09, 2014, 01:05:00 pm #5 Last Edit: February 09, 2014, 01:27:47 pm by rose28357
We can check the sdcard on a linux system.
1) The sdcard needs a magic byte in the first block that indcates it is bootable. I dont now how to check this
2) there has to be a fat partition which contains uboot and uimage ( and some other stuff). You can check that with your file explorer
3) the second and last partition ist ext4 and contains the root file system of the linux distribution. You can brows that as well.

Pat and direx wrote a explanation regarding the content of the two partition ...
http://www.cubieforums.com/index.php/topic,511.msg10869.html#msg10869

patwood

The SD card layout contains a standard PC MBR in the first 512 bytes: http://en.m.wikipedia.org/wiki/Master_Boot_Record.

At 8KB, you have the initial SPL boot loader, up to 24KB in length.  After that, u-boot, up to 512KB.

The "magic cookie" resides in the SPL header at offset 8K.  Also important is the whole SPL boot loader, as it contains a checksum that's checked once it's loaded into memory.