diff options
author | Pali Rohár <pali@kernel.org> | 2022-03-07 19:03:08 +0100 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2022-03-14 14:04:18 +0100 |
commit | 3782f55ae81825c6ce9f85ca4e6c6798e88087c5 (patch) | |
tree | 38b26bcbf02bb43f86cfc4cad2d33b99b52dec67 | |
parent | a79dea29127d2840277e6edc0f5c71dc1daec82b (diff) | |
download | u-boot-3782f55ae81825c6ce9f85ca4e6c6798e88087c5.zip u-boot-3782f55ae81825c6ce9f85ca4e6c6798e88087c5.tar.gz u-boot-3782f55ae81825c6ce9f85ca4e6c6798e88087c5.tar.bz2 |
tools: kwboot: Check if baudrate value is supported before sending image
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@kernel.org>
Reviewed-by: Stefan Roese <sr@denx.de>
-rw-r--r-- | tools/kwboot.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/tools/kwboot.c b/tools/kwboot.c index 986f27c..3b45e19 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; |