mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-25 06:00:43 +00:00
usb: Remove unnecessary portnr lookup from usb_new_device
If the device has a parent, it is instantiated from usb_hub_port_connect_change and the portnr is right there in dev->portnr, so there is no need for this whole dance to look it up. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
parent
46b7b2e802
commit
f7b9baf755
1 changed files with 2 additions and 17 deletions
19
common/usb.c
19
common/usb.c
|
@ -927,7 +927,6 @@ int usb_new_device(struct usb_device *dev)
|
|||
* thread_id=5729457&forum_id=5398
|
||||
*/
|
||||
__maybe_unused struct usb_device_descriptor *desc;
|
||||
int port = -1;
|
||||
struct usb_device *parent = dev->parent;
|
||||
unsigned short portstatus;
|
||||
|
||||
|
@ -965,24 +964,10 @@ int usb_new_device(struct usb_device *dev)
|
|||
#endif
|
||||
|
||||
if (parent) {
|
||||
int j;
|
||||
|
||||
/* find the port number we're at */
|
||||
for (j = 0; j < parent->maxchild; j++) {
|
||||
if (parent->children[j] == dev) {
|
||||
port = j;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (port < 0) {
|
||||
printf("usb_new_device:cannot locate device's port.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* reset the port for the second time */
|
||||
err = hub_port_reset(dev->parent, port, &portstatus);
|
||||
err = hub_port_reset(dev->parent, dev->portnr - 1, &portstatus);
|
||||
if (err < 0) {
|
||||
printf("\n Couldn't reset port %i\n", port);
|
||||
printf("\n Couldn't reset port %i\n", dev->portnr);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue