[U-Boot] [U-Boot,v2] spl: implement CRC check on U-Boot uImage

Simon Goldschmidt simon.k.r.goldschmidt at gmail.com
Fri Feb 8 21:05:41 UTC 2019


On Fri, Feb 8, 2019 at 8:46 PM Tom Rini <trini at konsulko.com> wrote:
>
> On Wed, Nov 28, 2018 at 09:52:45PM +0100, Simon Goldschmidt wrote:
>
> > SPL currently does not check uImage CRCs when loading U-Boot.
> >
> > This patch adds checking the uImage CRC when SPL loads U-Boot. It does
> > this by reusing the existing config option SPL_CRC32_SUPPORT to allow
> > leaving out the CRC check on boards where the additional code size or
> > boot time is a problem (adding the CRC check currently adds ~1.4 kByte
> > to flash).
> >
> > The SPL_CRC32_SUPPORT config option now gets enabled by default if SPL
> > support for legacy images is enabled to check the CRC on all boards
> > that don't actively take countermeasures.
> >
> > Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt at gmail.com>
> > Reviewed-by: Simon Glass <sjg at chromium.org>
>
> Really sorry for the delay on this, especially as I've found one or two
> problems.  The first problem is that with this vyasa-rk3288 and a few
> others fail to build due to a number of errors such as:
> ../common/spl/spl.c:269:12: error: 'struct spl_image_info' has no member
> named 'dcrc_data'

Hmm, let me check what's wrong there.

>
> Second, I believe this is causing a number of platforms with very tight
> SPL constraints, namely all of 64bit sunxi, to fail to link as they
> overflow SRAM now.  This can be fixed at least by making the new
> behavior opt-in, but I would fix the vyasa-rk3288 problem first.  Thanks
> in advance!

Well, I thought it would be better to have it default to 'y' since I think it
is what is expected. Shouldn't we explicitly work on those platforms?
I must say I was pretty shocked to see that SPL did not detect an invalid
CRC...

Can you point me to a config that fails?

Regards,
Simon


More information about the U-Boot mailing list