]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - common/usb.c
karo: tx28: set CONFIG_ENV_OVERWRITE also for NAND environment
[karo-tx-uboot.git] / common / usb.c
index 6283f3992c7cde77d8af62143c7671a4a427cbcd..fbaf8ecbe232ce63170228727df1ed7fa23b060f 100644 (file)
@@ -911,26 +911,24 @@ __weak int usb_alloc_device(struct usb_device *udev)
 }
 #endif /* !CONFIG_DM_USB */
 
-#ifndef CONFIG_DM_USB
-int usb_legacy_port_reset(struct usb_device *hub, int portnr)
+static int usb_hub_port_reset(struct usb_device *dev, struct usb_device *hub)
 {
        if (hub) {
                unsigned short portstatus;
                int err;
 
                /* reset the port for the second time */
-               err = legacy_hub_port_reset(hub, portnr - 1, &portstatus);
+               err = legacy_hub_port_reset(hub, dev->portnr - 1, &portstatus);
                if (err < 0) {
-                       printf("\n     Couldn't reset port %i\n", portnr);
+                       printf("\n     Couldn't reset port %i\n", dev->portnr);
                        return err;
                }
        } else {
-               usb_reset_root_port();
+               usb_reset_root_port(dev);
        }
 
        return 0;
 }
-#endif
 
 static int get_descriptor_len(struct usb_device *dev, int len, int expect_len)
 {
@@ -959,8 +957,6 @@ static int get_descriptor_len(struct usb_device *dev, int len, int expect_len)
 
 static int usb_setup_descriptor(struct usb_device *dev, bool do_read)
 {
-       __maybe_unused struct usb_device_descriptor *desc;
-
        /*
         * This is a Windows scheme of initialization sequence, with double
         * reset of the device (Linux uses the same sequence)
@@ -1034,7 +1030,7 @@ static int usb_setup_descriptor(struct usb_device *dev, bool do_read)
 }
 
 static int usb_prepare_device(struct usb_device *dev, int addr, bool do_read,
-                             struct usb_device *parent, int portnr)
+                             struct usb_device *parent)
 {
        int err;
 
@@ -1052,7 +1048,7 @@ static int usb_prepare_device(struct usb_device *dev, int addr, bool do_read,
        err = usb_setup_descriptor(dev, do_read);
        if (err)
                return err;
-       err = usb_legacy_port_reset(parent, portnr);
+       err = usb_hub_port_reset(dev, parent);
        if (err)
                return err;
 
@@ -1130,7 +1126,7 @@ int usb_select_config(struct usb_device *dev)
 }
 
 int usb_setup_device(struct usb_device *dev, bool do_read,
-                    struct usb_device *parent, int portnr)
+                    struct usb_device *parent)
 {
        int addr;
        int ret;
@@ -1139,7 +1135,7 @@ int usb_setup_device(struct usb_device *dev, bool do_read,
        addr = dev->devnum;
        dev->devnum = 0;
 
-       ret = usb_prepare_device(dev, addr, do_read, parent, portnr);
+       ret = usb_prepare_device(dev, addr, do_read, parent);
        if (ret)
                return ret;
        ret = usb_select_config(dev);
@@ -1169,7 +1165,7 @@ int usb_new_device(struct usb_device *dev)
 #ifdef CONFIG_USB_XHCI
        do_read = false;
 #endif
-       err = usb_setup_device(dev, do_read, dev->parent, dev->portnr);
+       err = usb_setup_device(dev, do_read, dev->parent);
        if (err)
                return err;