From: Bin Meng Date: Mon, 18 Sep 2017 13:40:46 +0000 (-0700) Subject: usb: hub: Clear BH reset status change for a 3.0 hub X-Git-Tag: v2017.11-rc1~2^2~6 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=061895fbe57d29f50bb3c6c8609d56a668d1387d;p=u-boot usb: hub: Clear BH reset status change for a 3.0 hub USB 3.0 hubs report bit[5] in the port status change response as BH reset. The hub shall set the C_BH_PORT_RESET field for this port. Signed-off-by: Bin Meng --- diff --git a/common/usb_hub.c b/common/usb_hub.c index a9d21bca5e..325d16dfc8 100644 --- a/common/usb_hub.c +++ b/common/usb_hub.c @@ -494,6 +494,12 @@ static int usb_scan_port(struct usb_device_scan *usb_scan) usb_clear_port_feature(dev, i + 1, USB_PORT_FEAT_C_RESET); } + if ((portchange & USB_SS_PORT_STAT_C_BH_RESET) && + usb_hub_is_superspeed(dev)) { + debug("port %d BH reset change\n", i + 1); + usb_clear_port_feature(dev, i + 1, USB_SS_PORT_FEAT_C_BH_RESET); + } + /* A new USB device is ready at this point */ debug("devnum=%d port=%d: USB dev found\n", dev->devnum, i + 1);