All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tools: kwboot: Check if baudrate value is supported before sending image
@ 2022-03-06 12:39 Pali Rohár
  2022-03-06 13:12 ` Marek Behún
  2022-03-06 22:38 ` Tony Dinh
  0 siblings, 2 replies; 8+ messages in thread
From: Pali Rohár @ 2022-03-06 12:39 UTC (permalink / raw)
  To: Stefan Roese, Marek Behún; +Cc: u-boot

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 help user to see error message about unsupported baudrate value by
local tty device immediately after starting kwboot.

Before this change, kwboot sent kwbimage header (at 115200 Bd) and then
validated that selected baudrate if is supported by tty device. It consumed
too much time (need to send kwbimage again and again) until some supported
baudrate by local tty device was guessed.

Signed-off-by: Pali Rohár <pali@kernel.org>
---
 tools/kwboot.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/tools/kwboot.c b/tools/kwboot.c
index f975c4a6c6ca..d9498af8fc02 100644
--- a/tools/kwboot.c
+++ b/tools/kwboot.c
@@ -2137,12 +2137,24 @@ main(int argc, char **argv)
 	if (optind != argc)
 		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,
+	 * change to different baudrate is done after sending header
+	 */
+	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;
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2022-03-08  6:16 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-06 12:39 [PATCH] tools: kwboot: Check if baudrate value is supported before sending image Pali Rohár
2022-03-06 13:12 ` Marek Behún
2022-03-06 22:38 ` Tony Dinh
2022-03-07 11:40   ` kwboot - positional tty argument Pali Rohár
2022-03-07 14:39     ` Stefan Roese
2022-03-07 16:45       ` Marek Behún
2022-03-07 17:41         ` Pali Rohár
2022-03-08  6:15       ` Tony Dinh

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.