|
@@ -38,13 +38,18 @@ static int do_fastboot_usb(int argc, char *const argv[],
|
|
#if CONFIG_IS_ENABLED(USB_FUNCTION_FASTBOOT)
|
|
#if CONFIG_IS_ENABLED(USB_FUNCTION_FASTBOOT)
|
|
int controller_index;
|
|
int controller_index;
|
|
char *usb_controller;
|
|
char *usb_controller;
|
|
|
|
+ char *endp;
|
|
int ret;
|
|
int ret;
|
|
|
|
|
|
if (argc < 2)
|
|
if (argc < 2)
|
|
return CMD_RET_USAGE;
|
|
return CMD_RET_USAGE;
|
|
|
|
|
|
usb_controller = argv[1];
|
|
usb_controller = argv[1];
|
|
- controller_index = simple_strtoul(usb_controller, NULL, 0);
|
|
|
|
|
|
+ controller_index = simple_strtoul(usb_controller, &endp, 0);
|
|
|
|
+ if (*endp != '\0') {
|
|
|
|
+ pr_err("Error: Wrong USB controller index format\n");
|
|
|
|
+ return CMD_RET_FAILURE;
|
|
|
|
+ }
|
|
|
|
|
|
ret = board_usb_init(controller_index, USB_INIT_DEVICE);
|
|
ret = board_usb_init(controller_index, USB_INIT_DEVICE);
|
|
if (ret) {
|
|
if (ret) {
|
|
@@ -120,6 +125,12 @@ NXTARG:
|
|
;
|
|
;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /* Handle case when USB controller param is just '-' */
|
|
|
|
+ if (argc == 1) {
|
|
|
|
+ pr_err("Error: Incorrect USB controller index\n");
|
|
|
|
+ return CMD_RET_USAGE;
|
|
|
|
+ }
|
|
|
|
+
|
|
fastboot_init((void *)buf_addr, buf_size);
|
|
fastboot_init((void *)buf_addr, buf_size);
|
|
|
|
|
|
if (!strcmp(argv[1], "udp"))
|
|
if (!strcmp(argv[1], "udp"))
|