On Mon, Apr 22, 2019 at 10:27:21PM +0200, Simon Goldschmidt wrote:
> This adds a size check for SPL that can dynamically check generated
> SPL binaries (including devicetree) for a size limit that ensures
> this image plus global data, heap and stack fit in initial SRAM.
> 
> Since some of these sizes are not available to make, a new host tool
> 'spl_size_limit' is added that dumps the resulting maximum size for
> an SPL binary to stdout. This tool is used in toplevel Makefile to
> implement the size check on SPL binaries.
> 
> Signed-off-by: Simon Goldschmidt <simon.k.r.goldschm...@gmail.com>
> ---
> 
> Changes in v2:
> - added missing tools/spl_size_limit.c
> 
>  Kconfig                |  8 --------
>  Makefile               |  2 +-
>  common/spl/Kconfig     | 36 ++++++++++++++++++++++++++++++++++++
>  tools/Makefile         |  2 ++
>  tools/spl_size_limit.c | 30 ++++++++++++++++++++++++++++++

Ah, now I get it, and why you said you depend on Heinrich's series now,
OK.  This isn't quite what I envisioned, but, maybe that's OK.  I was
thinking we could drop the whole of the shell function, stat() the file
and return 0/error.  But I guess on the whole we've got the shell
function portable and not too fragile looking, so maybe it's not worth
the extra work there.

I do have one problem I'd like to discuss, which is that to replicate
this for a TPL size limit (which we totally have and need to deal with),
we cp and sed spl_size_limit.c to tpl_size_limit.c.

I don't however see a clever way to avoid that.  CONFIG_IS_ENABLED()
would let us have the same #if test, but doing
size_limit -= CONFIG_SPL_FOO CONFIG_TPL_FOO;
is probably getting too clever.

Thanks!

-- 
Tom

Attachment: signature.asc
Description: PGP signature

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to