usb: storage: Show number of storage devices detected for DM_USB
authorMichal Simek <michal.simek@xilinx.com>
Wed, 21 Dec 2016 08:35:08 +0000 (09:35 +0100)
committerMarek Vasut <marek.vasut@gmail.com>
Tue, 17 Jan 2017 09:26:21 +0000 (10:26 +0100)
By enabling DM_USB information about number of storage devices
was lost.
Get this information back simply by printing number of devices detected
via BLK uclass.

For example:
scanning bus 0 for devices... 7 USB Device(s) found
       scanning usb for storage devices... 3 Storage Device(s) found
       scanning usb for ethernet devices... 0 Ethernet Device(s) found

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
cmd/usb.c
common/usb_storage.c

index 455127c844b9937c60f9a1a8047d409b4694f635..4fa456e318347452785edf5a2239fda63a1a6458 100644 (file)
--- a/cmd/usb.c
+++ b/cmd/usb.c
@@ -571,11 +571,11 @@ static void do_usb_start(void)
                return;
 
        /* Driver model will probe the devices as they are found */
-#ifndef CONFIG_DM_USB
 # ifdef CONFIG_USB_STORAGE
        /* try to recognize storage devices immediately */
        usb_stor_curr_dev = usb_stor_scan(1);
 # endif
+#ifndef CONFIG_DM_USB
 # ifdef CONFIG_USB_KEYBOARD
        drv_usb_kbd_init();
 # endif
index 0345aa22eff5f79e6266b7ce7fd07a3207674d27..b524a15e2bf93714c9ea758046d6c651decc4723 100644 (file)
@@ -303,7 +303,6 @@ void usb_stor_reset(void)
        usb_max_devs = 0;
 }
 
-#ifndef CONFIG_DM_USB
 /*******************************************************************************
  * scan the usb and reports device info
  * to the user if mode = 1
@@ -311,11 +310,12 @@ void usb_stor_reset(void)
  */
 int usb_stor_scan(int mode)
 {
-       unsigned char i;
-
        if (mode == 1)
                printf("       scanning usb for storage devices... ");
 
+#ifndef CONFIG_DM_USB
+       unsigned char i;
+
        usb_disable_asynch(1); /* asynch transfer not allowed */
 
        usb_stor_reset();
@@ -329,12 +329,12 @@ int usb_stor_scan(int mode)
        } /* for */
 
        usb_disable_asynch(0); /* asynch transfer allowed */
+#endif
        printf("%d Storage Device(s) found\n", usb_max_devs);
        if (usb_max_devs > 0)
                return 0;
        return -1;
 }
-#endif
 
 static int usb_stor_irq(struct usb_device *dev)
 {