usb tree and info commands may cause crash otherwise

Signed-off-by: Suneel Garapati <suneelgli...@gmail.com>
---
 cmd/usb.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/cmd/usb.c b/cmd/usb.c
index 992d414..81e1a7b 100644
--- a/cmd/usb.c
+++ b/cmd/usb.c
@@ -415,7 +415,8 @@ static void usb_show_tree_graph(struct usb_device *dev, 
char *pre)
                udev = dev_get_parent_priv(child);
 
                /* Ignore emulators, we only want real devices */
-               if (device_get_uclass_id(child) != UCLASS_USB_EMUL) {
+               if (device_get_uclass_id(child) !=
+                   (UCLASS_USB_EMUL | UCLASS_BLK)) {
                        usb_show_tree_graph(udev, pre);
                        pre[index] = 0;
                }
@@ -605,7 +606,8 @@ static void usb_show_info(struct usb_device *udev)
        for (device_find_first_child(udev->dev, &child);
             child;
             device_find_next_child(&child)) {
-               if (device_active(child)) {
+               if (device_active(child) &&
+                   (device_get_uclass_id(child) != UCLASS_BLK)) {
                        udev = dev_get_parent_priv(child);
                        usb_show_info(udev);
                }
-- 
2.7.4

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to