[U-Boot] granularity of bootm subcommands

Kumar Gala galak at kernel.crashing.org
Fri Aug 8 17:14:54 CEST 2008


>>   bootm usb_stop
>
> This is "usb stop"

So this case is easy since its a compile time choice.

>>   bootm disable_caches
>
> This is "icache off && dcache off"

I assume you are suggesting new toplevel cache commands.

>> "load_os" stays as is.
>
> Decompresses to a destination address?  I didn't see a gunzip/bz2  
> command in my brief search.  I would rather have a "decompress"  
> general purpose command (perhaps it is/should be part of the  
> "image" (im*) command set?).

This is orthogonal to the bootm discussion.  We can refactor the code  
to allow for such a toplevel command and reuse the code.  But the  
bootm commands CAN NOT require control flow in the scripting lang.   
Thus the desire to decompress or not, and what type has to be hidden  
inside a command like "load_os".  I'm ok w/providing and optional  
argument to the command to override the desired dest addr.

>> "load_fdt" could be:
>>   bootm load_fdt
>
> This is probably "fdt move"? (which is a misnomer: it actually is a  
> copy - my bad)  The fdt source and destination addresses need to be  
> determined (source from the image or "fdt address", malloc/lmb the  
> destination?).  I would advocate an "image" (iminfo?) command that  
> sets, as a side effect env variables or the image header structure  
> you identified previously.
>
> Obviously, I have not thought through this very carefully.

Some of this can be dealt with in a second pass.

>>   bootm boardsetup_fdt
>
> Use "fdt boardsetup"

We can't use it directly.  Remember the unconditionality/control issues.

>>   bootm fdt_resize
>
> "fdt move" with a size will do a resize.  Perhaps a new "fdt resize"  
> command to make it more obvious.  Do we really need to resize, can  
> we just make the fdt blob "big enough" (at the source or when we do  
> the "fdt move") and not worry about it?  Note that I addressed this  
> previously with the "-S" dtc flag (now deprecated, use -p instead)  
> and forced the problem on whoever built the blob originally.  Not  
> 100% satisfactory, but making it SEP is very effective. ;-)

Andy providing a patch that makes -S/-p not needed anymore.  I'd  
prefer to keep that functionality.  So we should have resize support.

The key to remember is in the first pass we have to be able to do all  
the steps in order and it work regardless of the input differences..  
thus mimicking the current bootm functionality.  This means no  
(if..than..else) which means we can't use any of the current commands  
directly.

- k



More information about the U-Boot mailing list