Skip to contentSkip to conversation

boot commands

U-Boot-Users Stephen Williams 2 participants 3 messages Mar 31, 2004 1 message not in the archive

lore
Share & tools
lore
#1 lore raw
In reply to a message not in the archive
Quoted 6 lines · Stephen Williams

I am setting up my device to autoboot, and I want to compile in a default boot command (a la CONFIG_BOOTCOMMAND) and only use the bootcmd variable if it is defined. I want to use the other environment for other things, though.

Quoted 6 lines

It appears to me, though, that in main.c autoboot will be prevented if getenv("bootcmd") returns 0, no matter what the CONFIG_BOOTCOMMAND value is set.

Am I mis-reading this? Is this an error in need of fixing?

Arg! It seems like *all* the autoboot related variables, including BOOTARGS and AUTOBOOT_PROMPT are ignored if there is *any* environment. This makes no sense to me. Surely people want to set per-board stuff in environment and keep common autoboot settings compiled in. My BOOTCOMMAND and BOOTARGS together are too large to fit into my 256byte EEPROM.

Signature · 4 lines
Steve Williams                "The woods are lovely, dark and deep.
steve at XXXXXXXXXX           But I have promises to keep,
http://www.XXXXXXXXXX         and lines to code before I sleep,
http://www.picturel.com       And lines to code before I sleep."
#2 lore raw
Quoted 4 lines · In message <[email protected]> you wrote:

Arg! It seems like *all* the autoboot related variables, including BOOTARGS and AUTOBOOT_PROMPT are ignored if there is *any* environment. This makes no sense to me. Surely people want to

Wrong. They are not ignored. They are used to define the DEFAULT environment.

Quoted 3 lines

set per-board stuff in environment and keep common autoboot settings compiled in. My BOOTCOMMAND and BOOTARGS together are too large to fit into my 256byte EEPROM.

You misunderstand how the environment works. There are no two separate sets, it is only one set, which gets pre-initialized form the default settings, which get used in case of corrupted checksum or so...

If you cannot fit your environment in 256 bytes you should use a
bigger EEPROM. Or even better (much more reliable) put the
environment in flash.

Best regards,

Wolfgang Denk

Signature · 4 lines
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-4596-87  Fax: (+49)-8142-4596-88  Email: wd at denx.de
"If the code and  the  comments  disagree,  then  both  are  probably
wrong."                                                - Norm Schryer
#3 lore raw
Quoted 16 lines · Wolfgang Denk wd-at-denx.de |u-boot-users|
Quoted 3 lines · In message <[email protected]> you wrote:

Arg! It seems like *all* the autoboot related variables, including BOOTARGS and AUTOBOOT_PROMPT are ignored if there is *any* environment. This makes no sense to me. Surely people want to

Wrong. They are not ignored. They are used to define the DEFAULT environment.

Quoted 3 lines

set per-board stuff in environment and keep common autoboot settings compiled in. My BOOTCOMMAND and BOOTARGS together are too large to fit into my 256byte EEPROM.

Quoted 4 lines

You misunderstand how the environment works. There are no two separate sets, it is only one set, which gets pre-initialized form the default settings, which get used in case of corrupted checksum or so...

Ah, I get it now. And yes, it does make sense. I was able to find more EEPROM space and when I cleared out the EEPROM, I got my compiled in values, which I was then able to store into the EEPROM and use there from then on. Autoboot is happy now, and so am I.

Thanks,

Signature · 4 lines
Steve Williams                "The woods are lovely, dark and deep.
steve at XXXXXXXXXX           But I have promises to keep,
http://www.XXXXXXXXXX         and lines to code before I sleep,
http://www.picturel.com       And lines to code before I sleep."