[U-Boot] u-boot boot sequence
Marcel
korgull at home.nl
Wed Sep 29 22:33:03 CEST 2010
On Monday, September 27, 2010 09:25:36 am Wolfgang Denk wrote:
> Dear Marcel,
>
> In message <201009270011.32850.korgull at home.nl> you wrote:
> > I do however have some questions about the u-boot startup behaviour.
>
> Please read the manual; it should cover most of your questions.
Thanks for your kind reply.
I do honestly have to say that I read a lot of u-boot code but actually only a
parts of the manual.
> > What I want to create is the following :
> >
> > 1) u-boot starts and checks if it can start my application (either CRC
> > check or whatever). This is the first thing u-boot should do.
> > 2) if it can't boot it will listen on USB or ethernet for someone to
> > upload a valid image or boot via NFS or whatever has been configured.
>
> This is standard behaviour. See 7.4. Boot Arguments Unleashed etc.,
> http://www.denx.de/wiki/view/DULG/LinuxBootArgs
I noticed that but had a different behavior in mind but was probably focused
too much on USB instead of really looking at u-boot's behavior. Now that I
read it again it does make a bit more sense and I think this will work out
fine.
> > 3) If it can boot, it will boot immediately (there may be a GPIO pin to
> > override this behaviour)
>
> setenv bootdelay 0
>
> > 4) once within the application (linux or whatever) I must be able to set
> > a flag that lets u-boot wait for uploading a new image file when I
> > soft-reset my device. This is needed for firmware upgrading of course. I
> > still need to check if this flag is supported by the CPU or needs other
> > support (eeprom perhaps).
>
> see tools/env for tools to read and write the U-Boot environment
> settings from Linux. This can be used to change the boot command, boot
> delay etc.
I used an AVR processor before and did this in the environment settings but
currently that doesn't work for me yet.
My env is in nor flash and I don't have a driver in linux yet to communicate
with it. I'll look into this.
Currently I write settings to eeprom but have no idea if it can be read from
u-boot. I currently only use it for items that I need in Linux. I did see some
drivers in u-boot for it, so I guess it should work as well and I'll have to
try it or write a driver for my NOR flash.
> > 5) After uploading an image the soft-reset is cleared and the whole
> > sequence start over again, so it should boot the new image.
>
> You can script all these things in U-Boot.
Great, that should solve it.
> > I know it's possible to do this but I wonder if it has been done before
> > and if there any examples of it ?
>
> There is all kinds of more or less complext stuff around. Read the
> manual. Read the default configurations set in other board config
> files. Read the code available in board/*/auto_update.c etc.
This does solve a lot of my questions.
Thanks a lot for pointing me to that code and the other answers.
best regards,
Marcel
> Best regards,
>
> Wolfgang Denk
More information about the U-Boot
mailing list