[U-Boot] [PATCH] spl: avoid printf when we might be doing Ymodem with CONFIG_SPL_FIT_SIGNATURE
Alex Kiernan
alex.kiernan at gmail.com
Thu Mar 21 08:57:34 UTC 2019
On Thu, Mar 21, 2019 at 2:58 AM Marek Vasut <marex at denx.de> wrote:
>
> On 3/20/19 8:52 PM, Alex Kiernan wrote:
> > If CONFIG_SPL_FIT_SIGNATURE is enabled and U-Boot is being loaded from UART
> > over Ymodem then we can't emit messages using printf() without causing
> > errors like:
> >
> > Sending: u-boot-dtb.img
> > Ymodem sectors/kbytes sent: 3009/376kRetry 0: Got 23 for sector ACK
> > Retry 0: NAK on sector
> > Retry 0: Got 68 for sector ACK
> > Retry 0: NAK on sector
> > Ymodem sectors/kbytes sent: 3273/409kRetry 0: Got 23 for sector ACK
> > Retry 0: NAK on sector
> > Retry 0: Got 68 for sector ACK
> > Retry 0: NAK on sector
> >
> > Use debug() rather than printf() to avoid sending messages on the serial
> > port.
> >
> > Signed-off-by: Alex Kiernan <alex.kiernan at gmail.com>
> > ---
> >
> > common/spl/spl_fit.c | 6 +++---
> > 1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
> > index db436268cbcd..08faf2c1b058 100644
> > --- a/common/spl/spl_fit.c
> > +++ b/common/spl/spl_fit.c
> > @@ -240,12 +240,12 @@ static int spl_load_fit_image(struct spl_load_info *info, ulong sector,
> > }
> >
> > #ifdef CONFIG_SPL_FIT_SIGNATURE
> > - printf("## Checking hash(es) for Image %s ... ",
> > - fit_get_name(fit, node, NULL));
> > + debug("## Checking hash(es) for Image %s ... ",
> > + fit_get_name(fit, node, NULL));
> > if (!fit_image_verify_with_data(fit, node,
> > src, length))
> > return -EPERM;
> > - puts("OK\n");
> > + debug("OK\n");
> > #endif
>
> Checking printf("Signature failed") to debug() is probably not what you
> want to do. It'd be hiding some pretty important output.
>
I'm not sure what message you do get in that case (since so far I've
failed to get keys into the SPL DTB in a way that seem to actually get
checked), but I take your point.
I can't see any mechanism for either buffering or discarding console
message when Ymodem is active, or am I just missing it, or anything
else that would address this problem?
--
Alex Kiernan
More information about the U-Boot
mailing list