mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 15:14:43 +00:00
USB storage probe
While debugging one ill behaving USB device I found two bugs in USB storage probe. usb_stor_get_info() returns -1 (error), 0 (skip) or 1 (ok). First part of this patch fixes error case. Second part fixes usb_inquiry()'s retry counter handling. Original code had retry = -1 on error case, not retry = 0 as checked in the next line. Signed-off-by: Kim B. Heino <Kim.Heino@bluegiga.com>
This commit is contained in:
parent
aaad108b88
commit
fac71cc49f
1 changed files with 2 additions and 2 deletions
|
@ -244,7 +244,7 @@ int usb_stor_scan(int mode)
|
|||
* get info and fill it in
|
||||
*/
|
||||
if (usb_stor_get_info(dev, &usb_stor[usb_max_devs],
|
||||
&usb_dev_desc[usb_max_devs]))
|
||||
&usb_dev_desc[usb_max_devs]) == 1)
|
||||
usb_max_devs++;
|
||||
}
|
||||
/* if storage device */
|
||||
|
@ -888,7 +888,7 @@ static int usb_inquiry(ccb *srb, struct us_data *ss)
|
|||
USB_STOR_PRINTF("inquiry returns %d\n", i);
|
||||
if (i == 0)
|
||||
break;
|
||||
} while (retry--);
|
||||
} while (--retry);
|
||||
|
||||
if (!retry) {
|
||||
printf("error in inquiry\n");
|
||||
|
|
Loading…
Reference in a new issue