On 02/18/2013 12:22:58 PM, Benoît Thébaudeau wrote:
On Monday, February 18, 2013 7:02:49 PM, Scott Wood wrote:
> On 02/18/2013 12:00:52 PM, Benoît Thébaudeau wrote:
> > The only question is if we may need to have an empty gap between
the
> > SPL and
> > U-Boot within the resulting image. I don't think so since that
would
> > mean that
> > the target memory device has an area that is not really available
at
> > the
> > location of this gap.
>
> Why not allow that possibility?
To save a config setting (there are already many for SPL) if this is
not
strictly required, but also for the reason below.
> Maybe it's easier for the SPL to load
> from a particular offset (e.g. NAND starting at the beginning of a
> block)?
CONFIG_SPL_MAX_SIZE would be closer to a NAND mapping in that case
(e.g. size of
1 NAND Flash block) than CONFIG_SPL_PAD_TO (address within RAM that
should be
considered relatively to CONFIG_SPL_TEXT_BASE to get the NAND offset).
CONFIG_SPL_PAD_TO is for the placement of the payload -- and it's not a
RAM address. Currently it is a link address (or zero if the linker
script handles padding, or padding is not required for other reasons).
With your patch it it is a file offset, IIUC.
CONFIG_SPL_MAX_SIZE is what it says -- the maximum size that the SPL
may be, ideally to be enforced by the linker script.
They are different. An SPL wanting the payload to begin as a block
boundary does not mean the hardware is suddenly capable of loading an
entire block of SPL.
Also, CONFIG_SPL_PAD_TO and CONFIG_SPL_MAX_SIZE depend on each other:
If both
can be defined, you may change one forgetting the other one, which
could e.g.
result in an overlapping of SPL and U-Boot that won't show up at
build time
(with CONFIG_SPL_MAX_SIZE = 0x1000 and CONFIG_SPL_PAD_TO =
CONFIG_SPL_TEXT_BASE
+ 0x800, the SPL would build fine, and objcopy wouldn't complain).
So add a check that CONFIG_SPL_PAD_TO >= CONFIG_SPL_MAX_SIZE (assuming
the new interpretation of CONFIG_SPL_PAD_TO as a file offset), and let
CONFIG_SPL_PAD_TO default to CONFIG_SPL_MAX_SIZE if not set.
-Scott
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot