[U-Boot] [PATCH v2] usb_storage : scan all interfaces to find a storage device

Marek Vasut marex at denx.de
Wed Mar 4 13:35:17 CET 2015


On Wednesday, March 04, 2015 at 12:26:02 PM, franck.jullien at gmail.com wrote:
> From: Franck Jullien <franck.jullien at gmail.com>
> 
> Mass storage is not necessary present on interface 0. This
> patch allow usb_stor_scan to look in every available interface.
> 
> Signed-off-by: Franck Jullien <franck.jullien at gmail.com>
> ---
> 
> v2: create a new function to improve indentation

Hi!

>  common/usb_storage.c |   45 ++++++++++++++++++++++++++++-----------------
>  1 files changed, 28 insertions(+), 17 deletions(-)
> 
> diff --git a/common/usb_storage.c b/common/usb_storage.c
> index 1411737..8a490d3 100644
> --- a/common/usb_storage.c
> +++ b/common/usb_storage.c
> @@ -208,6 +208,30 @@ static unsigned int usb_get_max_lun(struct us_data
> *us) return (len > 0) ? *result : 0;
>  }
> 
> +static int usb_storage_register(struct usb_device *dev, unsigned char
> iface) +{
> +	int lun, max_lun, start = usb_max_devs;
> +	int nb_dev = 0;
> +
> +	if (usb_storage_probe(dev, iface, &usb_stor[usb_max_devs])) {

In case you invert this condition here, you can even trim the indent
further. Like this:

if (!usb..........)
	return nb_dev;

/*
 * OK, it's..........
 .........
return nb_dev;
}

> +		/* OK, it's a storage device.  Iterate over its LUNs
> +		 * and populate `usb_dev_desc'.
> +		 */

Please fix the comment so that it matches the coding style for multiline
comments, like this.
/*
 * foo
 * bar
 */

> +		max_lun = usb_get_max_lun(&usb_stor[usb_max_devs]);
> +		for (lun = 0;
> +		     lun <= max_lun && usb_max_devs < USB_MAX_STOR_DEV;
> +		     lun++) {

You should be able to put this for () on a single line once you invert
the condition above :)

> +			usb_dev_desc[usb_max_devs].lun = lun;
> +			if (usb_stor_get_info(dev, &usb_stor[start],
> +			    &usb_dev_desc[usb_max_devs]) == 1) {
> +				nb_dev++;
> +			}
> +		}
> +	}
> +
> +	return nb_dev;
> +}

Sorry for pushing you some more, I believe V3 will be the final one.

Thank you!


More information about the U-Boot mailing list