diff options
author | Philipp Tomsich <philipp.tomsich@theobroma-systems.com> | 2017-11-01 23:51:00 +0100 |
---|---|---|
committer | Philipp Tomsich <philipp.tomsich@theobroma-systems.com> | 2017-11-01 23:51:00 +0100 |
commit | 215c2ea913e305b5dcfe8b8cb0cb6148dcc81f6f (patch) | |
tree | 2335a016fca0060ff71d4be06971d3024792095c | |
parent | 6084d94f19939f3ac0ce70124251a192dde592e2 (diff) |
[wip, squash] trigger usb reset workaround for usb1 only; still hard-coded
-rw-r--r-- | drivers/usb/host/xhci.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index d27eeccffb..776b6d0a12 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c @@ -1037,8 +1037,10 @@ static int xhci_submit_root(struct usb_device *udev, unsigned long pipe, xhci_writel(status_reg, reg); break; case USB_PORT_FEAT_POWER: - // if (le16_to_cpu(req->index) == 1) + if ((strcmp(ctrl->dev->name, "usb@fe900000") == 0) && + le16_to_cpu(req->index) == 1) { + printf("%s: dev='%s': USB workaround\n", __func__, ctrl->dev->name); struct udevice *regulator; int ret = regulator_get_by_platname("usbhub_enable", ®ulator); if (ret) { |