Always boot from SD card

2,887 views
Skip to first unread message

danielduese...@gmail.com

unread,
Jan 24, 2014, 7:29:03 PM1/24/14
to beagl...@googlegroups.com
Hello

Sorry, purhaps is this already somewere posted, but i can't find a answer:

How can i change the settings, that the BB-Black automaticaly always boots from the SD Card? I don't want to press always the boot-button.

Thanks for help!

DM


Charles Steinkuehler

unread,
Jan 27, 2014, 8:37:04 AM1/27/14
to beagl...@googlegroups.com
The default boot loader in the on-board emmc will look for an SD card
and try to boot it if found. The boot button is generally only
necessary to force booting from the SD card if your emmc gets corrupt.

--
Charles Steinkuehler
cha...@steinkuehler.net

John Syn

unread,
Jan 27, 2014, 2:59:56 PM1/27/14
to beagl...@googlegroups.com

On 1/27/14, 5:37 AM, "Charles Steinkuehler" <cha...@steinkuehler.net>
wrote:
What you said is mostly correct, but without the button pressed, the
processor loads MLO and u-boot from emmc and the u-boot script checks to
see if the SDCard is installed and then loads Env.txt, zImage/uImage, etc
from the SDCard. Pressing the boot button makes the processor load MLO and
u-boot from the SDCard. This ensures that you cannot brick the BBB.

Regards,
John
>
>--
>Charles Steinkuehler
>cha...@steinkuehler.net
>
>--
>For more options, visit http://beagleboard.org/discuss
>---
>You received this message because you are subscribed to the Google Groups
>"BeagleBoard" group.
>To unsubscribe from this group and stop receiving emails from it, send an
>email to beagleboard...@googlegroups.com.
>For more options, visit https://groups.google.com/groups/opt_out.


rob....@gmail.com

unread,
Jun 6, 2014, 1:31:02 PM6/6/14
to beagl...@googlegroups.com
It seems BBB Rev C forces you to press the button to boot from the SD card. I have been unable to get it to boot from the SD otherwise. Tested on 6 BBB Rev C (what you describe is what I see on Rev B and Rev A6A)

Maxim Podbereznyy

unread,
Jun 6, 2014, 3:59:14 PM6/6/14
to beagleboard

Robert Lemon

unread,
Jun 9, 2014, 9:57:53 AM6/9/14
to beagl...@googlegroups.com

I actually had some success by removing the MLO file from the eMMC. I wish I didn't have to do this however.
Out of the box rev B and A6A both boot correctly, I wonder what brought upon the change for C?

> You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/ajLAHk3-S60/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.

Robert Nelson

unread,
Jun 9, 2014, 10:05:32 AM6/9/14
to Beagle Board
On Fri, Jun 6, 2014 at 4:35 PM, Robert Lemon <rob....@gmail.com> wrote:
> I actually had some success by removing the MLO file from the eMMC. I wish I
> didn't have to do this however.
> Out of the box rev B and A6A both boot correctly, I wonder what brought upon
> the change for C?

Well, it has a sane boot-loader installed by default now. It won't
just boot from the microSD, just because the microSD card is present.
Instead it's looking for an uEnv.txt file with a valid variable
"uenvcmd" telling it what to boot from.

If you want the prior arrangement flash the ancient Angstrom image into eMMC.

http://beagleboard.org/latest-images

Regards,

--
Robert Nelson
http://www.rcn-ee.com/

aswincha...@gmail.com

unread,
Jun 9, 2014, 10:40:38 AM6/9/14
to beagl...@googlegroups.com, danielduese...@gmail.com, "cha...@steinkuehler.net
Hai friends,
     I have a problem with bbb that is just opposite of yours. I am trying to boot wec 7 (have files nk.bin, mlo, ebootsd.nb0) on bbb through sd card. but its not booting any way,
I tried it using boot button pressing,hp format tool,ti boot utility. I hope that you can answer my question. 
Please reply me with the procedure that you followed.

thanks in advance...

denton....@gmail.com

unread,
Oct 27, 2014, 2:13:37 PM10/27/14
to beagl...@googlegroups.com
Hi,

I'm currently having this issue of a Rev C board no longer booting my SD image created for a Rev B board. Could you give an example of what I should add to the uEnv.txt file to get it to boot properly?

regards

Matt.

Robert Nelson

unread,
Oct 27, 2014, 2:54:35 PM10/27/14
to Beagle Board
On Mon, Oct 27, 2014 at 1:13 PM, <denton....@gmail.com> wrote:
> Hi,
>
> I'm currently having this issue of a Rev C board no longer booting my SD
> image created for a Rev B board. Could you give an example of what I should
> add to the uEnv.txt file to get it to boot properly?

It's looking for a file named "uEnv.txt" with a variable call "uenvcmd" set..

uenvcmd=load mmc 0:1 /boot/zImage 0x.... ; load mmc 0:1
/boot/am335x-boneblack.dtb 0xxyz... ; bootz 0x - 0xxxyz

Matt Denton

unread,
Oct 27, 2014, 4:34:24 PM10/27/14
to beagl...@googlegroups.com
Hi,

Yes I have uEnv.txt file, but on Rev B all I needed was this:

optargs="consoleblank=0" capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN capemgr.enable_partno=BB-UART1,BB-UART2

Ok, so am I correct in assuming:

uenvcmd=load mmc 0:1 /boot/zImage 0x.... ; load mmc 0:1 /boot/am335x-boneblack.dtb 0xxyz... ; bootz 0x - 0xxxyz

translates to:

uenvcmd=load mmc [device:part] /boot/zImage [load-address]; load mmc [device:part] /boot/am335x-boneblack.dtb [fdt-address]; bootz [load-address]

which should become this..?

uenvcmd=load mmc 0:1 /boot/zImage 0x82000000; load mmc 0:1 /boot/am335x-boneblack.dtb 0x88000000 ; bootz 0x82000000

My SD image is built for Rev B so it creates a uImage not a zImage. is this going to be an issue? I can re-build as zImage. or do I simply change to:

uenvcmd=load mmc 0:1 /boot/uImage 0x82000000; load mmc 0:1 /boot/am335x-boneblack.dtb 0x88000000 ; bootu 0x82000000

One question, is the SD card mmc device 0? I assumed this would be the nand device, and hence I should be using mmc 1:1 ?

Thanks for your help.


--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/ajLAHk3-S60/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Matt Denton

micromagic systems ltd
www.micromagicsystems.com
www.hexapodrobot.com

Robert Nelson

unread,
Oct 27, 2014, 4:39:08 PM10/27/14
to Beagle Board
On Mon, Oct 27, 2014 at 2:19 PM, Matt Denton <ma...@micromagicsystems.com> wrote:
> Hi,
>
> Yes I have uEnv.txt file, but on Rev B all I needed was this:
>
> optargs="consoleblank=0"
> capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
> capemgr.enable_partno=BB-UART1,BB-UART2
>
> Ok, so am I correct in assuming:
>
> uenvcmd=load mmc 0:1 /boot/zImage 0x.... ; load mmc 0:1
> /boot/am335x-boneblack.dtb 0xxyz... ; bootz 0x - 0xxxyz
>
> translates to:
>
> uenvcmd=load mmc [device:part] /boot/zImage [load-address]; load mmc
> [device:part] /boot/am335x-boneblack.dtb [fdt-address]; bootz [load-address]
>
> which should become this..?
>
> uenvcmd=load mmc 0:1 /boot/zImage 0x82000000; load mmc 0:1
> /boot/am335x-boneblack.dtb 0x88000000 ; bootz 0x82000000
>
> My SD image is built for Rev B so it creates a uImage not a zImage. is this
> going to be an issue? I can re-build as zImage. or do I simply change to:
>
> uenvcmd=load mmc 0:1 /boot/uImage 0x82000000; load mmc 0:1
> /boot/am335x-boneblack.dtb 0x88000000 ; bootu 0x82000000

uImage = bootm
zImage = bootz


> One question, is the SD card mmc device 0? I assumed this would be the nand
> device, and hence I should be using mmc 1:1 ?

nand =/= eMMC, eMMC is just a soldered on microSD device...

u-boot:
microSD 0
eMMC 1

Matt Denton

unread,
Oct 27, 2014, 5:07:16 PM10/27/14
to beagl...@googlegroups.com
Ok thanks. I currently have this:

uenvcmd=load mmc 0:1 0x82000000 /boot/uImage; load mmc 0:1 0x88000000 /boot/am335x-boneblack.dtb; bootm 0x82000000

But as yet it's not working. Unfortunately I don't ahve the serial debug cable with me so I can't see where it is failing, hopefully I will have this tomorrow and see what's going on.


--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/ajLAHk3-S60/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Robert Nelson

unread,
Oct 27, 2014, 5:09:00 PM10/27/14
to Beagle Board
On Mon, Oct 27, 2014 at 3:53 PM, Matt Denton <ma...@micromagicsystems.com> wrote:
> Ok thanks. I currently have this:
>
> uenvcmd=load mmc 0:1 0x82000000 /boot/uImage; load mmc 0:1 0x88000000
> /boot/am335x-boneblack.dtb; bootm 0x82000000

bootm 0x82000000 - 0x88000000

Otherwise the kernel won't find the *.dtb (the - is for the empty
initramfs location)


> But as yet it's not working. Unfortunately I don't ahve the serial debug
> cable with me so I can't see where it is failing, hopefully I will have this
> tomorrow and see what's going on.

Matt Denton

unread,
Oct 28, 2014, 11:49:20 AM10/28/14
to beagl...@googlegroups.com
Ok thanks. 

I've left the office now so ill give it a go in the morning.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/ajLAHk3-S60/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Matt Denton

unread,
Oct 28, 2014, 11:49:21 AM10/28/14
to beagl...@googlegroups.com
Ok, I got this working this morning with the following uEnv.txt additions:

mmcroot=/dev/mmcblk0p2 rw
mmcrootfstype=ext4 rootwait fixrtc

console=ttyO0,115200n8
kernel_file=uImage

loadaddr=0x82000000
fdtaddr=0x88000000

loadkernel=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${kernel_file}
loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdtaddr} /boot/am335x-boneblack.dtb

loadfiles=run loadkernel; run loadfdt
mmcargs=setenv bootargs console=tty0 console=${console} ${optargs} root=${mmcroot} rootfstype=${mmcrootfstype}
uenvcmd=run loadfiles; run mmcargs; bootm ${loadaddr} - ${fdtaddr}

Thanks for the help! :)
Reply all
Reply to author
Forward
0 new messages