wandboard does not boot with current mainline

Fabio Estevam festevam at gmail.com
Thu May 7 23:16:23 CEST 2020


Hi Heiko,

On Thu, May 7, 2020 at 9:12 AM Heiko Schocher <hs at denx.de> wrote:
>
> Hello Fabio,
>
> I have my wandboard DL in my automated daily build setup example:
>
> http://xeidos.ddns.net/ubtestresults/
>
> and wondered, why my last result is from may 4th ...
>
> (Ok, there is a bug, that I do not see not booting boards in this page,
>   but this is just a proof of concept page ...)
>
>
> So, what I see is:
>
> │   │   ├─UBOOT (wandboard-uboot)
> │   │   │    <> Connecting to
> /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0, speed 115200
> │   │   │    <>  Escape character: Ctrl-\ (ASCII 28, FS): enabled
> │   │   │    <> Type the escape character followed by C to get back,
> │   │   │    <> or followed by ? to see other options.
> │   │   │    <> ----------------------------------------------------
> │   │   │    <>
> │   │   │    <> U-Boot SPL 2020.07-rc1-tbot-00298-g425fefa9a3 (May 05 2020 - 04:18:47 +0200)
> │   │   │    <> Trying to boot from MMC1
>
>
> and no more output ...
>
> Do you have any idea, what is wrong with current mainline?

Thanks for the report.

This boot failure is caused by:

commit 20a154f95bfe0a3b5bfba90bea7f001c58217536
Author: Marek Vasut <marex at denx.de>
Date:   Fri May 1 17:40:25 2020 +0200

    mkimage: fit: Do not tail-pad fitImage with external data

    There is no reason to tail-pad fitImage with external data to 4-bytes,
    while fitImage without external data does not have any such padding and
    is often unaligned. DT spec also does not mandate any such padding.

    Moreover, the tail-pad fills the last few bytes with uninitialized data,
    which could lead to a potential information leak.

    $ echo -n xy > /tmp/data ; \
            ./tools/mkimage -E -f auto -d /tmp/data /tmp/fitImage ; \
            hexdump -vC /tmp/fitImage | tail -n 3

    before:
    00000260  61 2d 6f 66 66 73 65 74  00 64 61 74 61 2d 73 69
|a-offset.data-si|
    00000270  7a 65 00 00 78 79 64 64                           |ze..xydd|
                       ^^       ^^ ^^
    after:
    00000260  61 2d 6f 66 66 73 65 74  00 64 61 74 61 2d 73 69
|a-offset.data-si|
    00000270  7a 65 00 78 79                                    |ze.xy|

    Signed-off-by: Marek Vasut <marex at denx.de>
    Reviewed-by: Simon Glass <sjg at chromium.org>
    Cc: Heinrich Schuchardt <xypron.glpk at gmx.de>
    Cc: Tom Rini <trini at konsulko.com>

which has been reverted by Tom in commit:

commit 7946a814a31989998120b4b4aa417222ba21b2fa
Author: Tom Rini <trini at konsulko.com>
Date:   Wed May 6 11:05:17 2020 -0400

    Revert "mkimage: fit: Do not tail-pad fitImage with external data"

    This has been reported to break booting of U-Boot from SPL on a number
    of platforms due to a lack of alignment of the external data.  The
    issues this commit is addressing will need to be resolved another way.

    Re-introduce a data leak in the padding for now.

    This reverts commit 20a154f95bfe0a3b5bfba90bea7f001c58217536.

    Reported-by: Alex Kiernan <alex.kiernan at gmail.com>
    Reported-by: Michael Walle <michael at walle.cc>
    Tested-by: Jan Kiszka <jan.kiszka at siemens.com>
    Signed-off-by: Tom Rini <trini at konsulko.com>


More information about the U-Boot mailing list