How to burn Uboot Linux on SD Card?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to burn Uboot Linux on SD Card?

Jump to solution
10,246 Views
philippeballeyd
Contributor IV

Hi

I'm using a Sabre for smart devices board and i can't manage to boot from a SD Card. I'm following every steps of part 7 (Using a Linux Host to Set Up an SD/MMC Card) in i.MX_6_SABRE-SD_Linux_User's_Guide.pdf. Everything seems to go as planned. But when i put the SD Card in the SD3 slot, nothing happens. I can't get to the u-boot prompt. Nothing appears on the terminal

I had an older SD Card made by one of my coworker and it seems to work fine. I can get the u-boot prompt on this one.

I'm pretty sure i'm failing to setup my SD Card but i have no idea what does not work.

I just saw this thread ( i.MX6Q-SDB board bringup with Linux ) and i used the same command as yuri did. I still get the same problem. Nothing appears on the Terminal.

Files are properly pasted in the SD Card since i can see them on my host Linux. But when i start up the board, nothing appears on the terminal

Thanks by advance

Philippe

Labels (2)
0 Kudos
1 Solution
3,668 Views
philippeballeyd
Contributor IV

I wasn't using Ubuntu 12.04 a this time, so i believe it's why nothing was working properly

View solution in original post

0 Kudos
3 Replies
3,668 Views
fabio_estevam
NXP Employee
NXP Employee

sudo dd if=u-boot.imx of=/dev/sbX bs=512 seek=2; sync

should do the work.

0 Kudos
3,668 Views
philippeballeyd
Contributor IV

i am using the command:

sudo dd if=u-boot-imx6qsabresd_sd.imx of=/dev/mmcblk0 bs=512 seek=2 conv=fsync

Since my sd card is available on /dev/mmcblk0 instead of /dev/sdX, is this a problem?

edit: So i used your command and now I do manage to get the U-boot prompt.

I typed the following commands:

U-Boot > setenv loadaddr 0x12000000

U-Boot > setenv fdt_addr 0x18000000

U-Boot > setenv fdt_high 0xffffffff

U-Boot > setenv bootargs_base 'setenv bootargs console=ttymxc0,115200'

U-Boot > setenv bootargs_mmc 'setenv bootargs ${bootargs} root=/dev/

mmcblk0p2 rootwait rw video=mxcfb1:dev=ldb,LDB-XGA,if=RGB666 video=mxcfb0:dev=hdmi,

1920x1080M@60,if=RGB24'

U-Boot > setenv bootcmd_mmc 'run bootargs_base bootargs_mmc;mmc dev 1;mmc read $

{loadaddr} 0x800 0x2000;mmc read ${fdt_addr} 0x5000 0x800;bootm ${loadaddr} - $

{fdt_addr}'

U-Boot > setenv bootcmd 'run bootcmd_mmc'

U-Boot > saveenv

U-Boot > run bootcmd

But here's what i get:

Hit any key to stop autoboot:  0

mmc1 is current device

mmc - MMC sub system

Usage:

mmc read addr blk# cnt

mmc write addr blk# cnt

mmc erase blk# cnt

mmc rescan

mmc part - lists available partition on current mmc device

mmc dev [dev] [part] - show or set current mmc device [partition]

mmc list - lists available devices

U-Boot >

How do i get to the linux prompt now?

EDIT 2: thanks to another post i figured out i had to change 2 things in the u-boot commands:

root=/dev/mmcblk0p2 -> root=/dev/mmcblk0p1

{loadaddr} 0x800 0x2000 -> {loadaddr} 0x800 0x3000



The kernel is now loading but fails to complete. The board just stops running.

I'm pretty sure i'm having troubles with my SD card partitions but i don't understand why it doesn't work when i follow the documentation steps by steps.

Thanks in advance

0 Kudos
3,669 Views
philippeballeyd
Contributor IV

I wasn't using Ubuntu 12.04 a this time, so i believe it's why nothing was working properly

0 Kudos