[PATCH v2 2/3] tools: kwboot: Check if baudrate value is supported before sending image
Stefan Roese
sr at denx.de
Tue Mar 8 13:15:02 CET 2022
On 3/7/22 19:03, Pali Rohár wrote:
> Call kwboot_open_tty() which baudrate value which was specified at the
> command line by option -B. This function returns error if baudrate is not
> supported by selected tty device.
>
> Initial baudrate for image transfer is always 115200, so call
> kwboot_tty_change_baudrate() with value 115200 immediately after
> kwboot_open_tty() if baudrate specified by option -B is different than
> 115200.
>
> This makes kwboot fail immediately, informing that baudrate is unsupported,
> instead of failing only after the first part of image is already sent.
>
> Signed-off-by: Pali Rohár <pali at kernel.org>
Reviewed-by: Stefan Roese <sr at denx.de>
Thanks,
Stefan
> ---
> tools/kwboot.c | 14 +++++++++++++-
> 1 file changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/tools/kwboot.c b/tools/kwboot.c
> index 986f27c2012a..3b45e19a30aa 100644
> --- a/tools/kwboot.c
> +++ b/tools/kwboot.c
> @@ -2139,12 +2139,24 @@ main(int argc, char **argv)
> goto usage;
> }
>
> - tty = kwboot_open_tty(ttypath, imgpath ? 115200 : baudrate);
> + tty = kwboot_open_tty(ttypath, baudrate);
> if (tty < 0) {
> perror(ttypath);
> goto out;
> }
>
> + /*
> + * initial baudrate for image transfer is always 115200,
> + * the change to different baudrate is done only after the header is sent
> + */
> + if (imgpath && baudrate != 115200) {
> + rc = kwboot_tty_change_baudrate(tty, 115200);
> + if (rc) {
> + perror(ttypath);
> + goto out;
> + }
> + }
> +
> if (baudrate == 115200)
> /* do not change baudrate during Xmodem to the same value */
> baudrate = 0;
Viele Grüße,
Stefan Roese
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de
More information about the U-Boot
mailing list