summaryrefslogtreecommitdiff
path: root/drivers/usb/host
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2016-04-26 03:02:35 +0200
committerMarek Vasut <marex@denx.de>2016-05-03 19:21:18 +0200
commite96e064f51139c4af39f14499564ef76e40bbc29 (patch)
treeb3fcb42cef26f512cd1198ab040e07f97038db98 /drivers/usb/host
parentb4fbd089e4b7ead53d4a27148f6df9c18572b1ce (diff)
downloadu-boot-imx-e96e064f51139c4af39f14499564ef76e40bbc29.zip
u-boot-imx-e96e064f51139c4af39f14499564ef76e40bbc29.tar.gz
u-boot-imx-e96e064f51139c4af39f14499564ef76e40bbc29.tar.bz2
usb: dwc2: Init desc_before_addr
Initialize desc_before_addr, otherwise the USB core won't send the first 64B Get Device Descriptor request in common/usb.c function usb_setup_descriptor() . There are some USB devices which expect this sequence and otherwise can misbehave. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Dinh Nguyen <dinguyen@opensource.altera.com> Cc: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'drivers/usb/host')
-rw-r--r--drivers/usb/host/dwc2.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
index 0c4adaf..30b51b3 100644
--- a/drivers/usb/host/dwc2.c
+++ b/drivers/usb/host/dwc2.c
@@ -1201,6 +1201,9 @@ static int dwc2_usb_ofdata_to_platdata(struct udevice *dev)
static int dwc2_usb_probe(struct udevice *dev)
{
struct dwc2_priv *priv = dev_get_priv(dev);
+ struct usb_bus_priv *bus_priv = dev_get_uclass_priv(dev);
+
+ bus_priv->desc_before_addr = true;
return dwc2_init_common(priv);
}