[U-Boot] [PATCH v3] xyz-modem: Fix timeout loop waiting with WATCHDOG

Simon Glass sjg at chromium.org
Thu Jan 10 12:56:57 UTC 2019


On Tue, 8 Jan 2019 at 06:58, Lokesh Vutla <lokeshvutla at ti.com> wrote:
>
> Commit 2c77c0d6524eb ("xyz-modem: Change getc timeout loop waiting")
> fixes the loop delay when using a hw watchdog, assuming that watchdog
> kicking is taken care of by getc(). But the xyzmodem driver tries to
> do a getc only after confirming that a character is available like below:
>         while (!tstc()) {
>                 till timeout;
>         }
>         if (tstc())
>                 *c = getc();
>
> and getc() does a watchdog reset only if it fails to see a character.
> In this case, getc() always sees a character and never does a
> watchdog reset. So to make sure that watchdog doesn't get reset
> while loading the file, do a watchdog reset just before starting the
> image loading.
>
> Signed-off-by: Lokesh Vutla <lokeshvutla at ti.com>
> Signed-off-by: Vignesh R <vigneshr at ti.com>
> ---
> - This fixes uart boot on am335x-evm.
> Changes since v2:
> - Updated commit message.
>
>  common/xyzModem.c | 2 ++
>  1 file changed, 2 insertions(+)

Reviewed-by: Simon Glass <sjg at chromium.org>


More information about the U-Boot mailing list