From: Hans de Goede Date: Sat, 20 Sep 2014 15:03:52 +0000 (+0200) Subject: usb: Remove unnecessary portnr lookup from usb_new_device X-Git-Tag: v2015.01-rc1~65 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=f7b9baf75596cca891e0a5da85a45c799131404e;p=u-boot 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 --- diff --git a/common/usb.c b/common/usb.c index bd0f8d5d18..7d33a0f086 100644 --- a/common/usb.c +++ b/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; } }