tools: kwboot: Allow to use option -b without image path
Allow option -b without image path parameter, to send boot pattern and wait for response but not send any image. This allows to use kwboot just for processing boot pattern and user can use any other xmodem tool for transferring the image itself (e.g. sx). Useful for debugging purposes. Signed-off-by: Pali Rohár <pali@kernel.org> Signed-off-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Stefan Roese <sr@denx.de>
This commit is contained in:
parent
5d8aa4c92b
commit
c513fe47dc
@ -1699,6 +1699,8 @@ main(int argc, char **argv)
|
||||
size_t size;
|
||||
size_t after_img_rsv;
|
||||
int baudrate;
|
||||
int prev_optind;
|
||||
int c;
|
||||
|
||||
rv = 1;
|
||||
tty = -1;
|
||||
@ -1716,22 +1718,32 @@ main(int argc, char **argv)
|
||||
kwboot_verbose = isatty(STDOUT_FILENO);
|
||||
|
||||
do {
|
||||
int c = getopt(argc, argv, "hb:ptaB:dD:q:s:o:");
|
||||
prev_optind = optind;
|
||||
c = getopt(argc, argv, "hbptaB:dD:q:s:o:");
|
||||
if (c < 0)
|
||||
break;
|
||||
|
||||
switch (c) {
|
||||
case 'b':
|
||||
if (imgpath || bootmsg || debugmsg)
|
||||
goto usage;
|
||||
bootmsg = kwboot_msg_boot;
|
||||
imgpath = optarg;
|
||||
if (prev_optind == optind)
|
||||
goto usage;
|
||||
if (argv[optind] && argv[optind][0] != '-')
|
||||
imgpath = argv[optind++];
|
||||
break;
|
||||
|
||||
case 'D':
|
||||
if (imgpath || bootmsg || debugmsg)
|
||||
goto usage;
|
||||
bootmsg = NULL;
|
||||
imgpath = optarg;
|
||||
break;
|
||||
|
||||
case 'd':
|
||||
if (imgpath || bootmsg || debugmsg)
|
||||
goto usage;
|
||||
debugmsg = kwboot_msg_debug;
|
||||
break;
|
||||
|
||||
@ -1774,11 +1786,11 @@ main(int argc, char **argv)
|
||||
if (!bootmsg && !term && !debugmsg)
|
||||
goto usage;
|
||||
|
||||
if (argc - optind < 1)
|
||||
goto usage;
|
||||
|
||||
ttypath = argv[optind++];
|
||||
|
||||
if (optind != argc)
|
||||
goto usage;
|
||||
|
||||
tty = kwboot_open_tty(ttypath, imgpath ? 115200 : baudrate);
|
||||
if (tty < 0) {
|
||||
perror(ttypath);
|
||||
|
Loading…
Reference in New Issue
Block a user