diff options
author | Tom Rini <trini@konsulko.com> | 2016-03-04 20:53:50 -0500 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2016-03-04 20:53:50 -0500 |
commit | 08b24722f0ac9159697360faed35d12852592eb3 (patch) | |
tree | 5284391a49e5ccd14f18e00a4782776f9c64e69b | |
parent | b112b007162f5d7d523b135b413a37ced15793f9 (diff) | |
parent | b5ab663a6956e47180706b897bc9567335257d58 (diff) |
Merge branch 'master' of git://git.denx.de/u-boot-usb
-rw-r--r-- | drivers/usb/gadget/composite.c | 8 | ||||
-rw-r--r-- | drivers/usb/host/dwc2.c | 4 | ||||
-rw-r--r-- | drivers/usb/host/dwc2.h | 2 |
3 files changed, 12 insertions, 2 deletions
diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c index 60f9272ae6..d0ee7847b9 100644 --- a/drivers/usb/gadget/composite.c +++ b/drivers/usb/gadget/composite.c @@ -1077,6 +1077,8 @@ static struct usb_gadget_driver composite_driver = { */ int usb_composite_register(struct usb_composite_driver *driver) { + int res; + if (!driver || !driver->dev || !driver->bind || composite) return -EINVAL; @@ -1084,7 +1086,11 @@ int usb_composite_register(struct usb_composite_driver *driver) driver->name = "composite"; composite = driver; - return usb_gadget_register_driver(&composite_driver); + res = usb_gadget_register_driver(&composite_driver); + if (res != 0) + composite = NULL; + + return res; } /** diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c index c6727c381c..b2f4bc685a 100644 --- a/drivers/usb/host/dwc2.c +++ b/drivers/usb/host/dwc2.c @@ -263,7 +263,9 @@ static void dwc_otg_core_init(struct dwc2_core_regs *regs) /* Program the ULPI External VBUS bit if needed */ #ifdef CONFIG_DWC2_PHY_ULPI_EXT_VBUS - usbcfg |= DWC2_GUSBCFG_ULPI_EXT_VBUS_DRV; + usbcfg |= (DWC2_GUSBCFG_ULPI_EXT_VBUS_DRV | + DWC2_GUSBCFG_ULPI_INT_VBUS_INDICATOR | + DWC2_GUSBCFG_INDICATOR_PASSTHROUGH); #else usbcfg &= ~DWC2_GUSBCFG_ULPI_EXT_VBUS_DRV; #endif diff --git a/drivers/usb/host/dwc2.h b/drivers/usb/host/dwc2.h index 594757b609..4482dc621d 100644 --- a/drivers/usb/host/dwc2.h +++ b/drivers/usb/host/dwc2.h @@ -152,6 +152,8 @@ struct dwc2_core_regs { #define DWC2_GUSBCFG_ULPI_INT_VBUS_INDICATOR_OFFSET 21 #define DWC2_GUSBCFG_TERM_SEL_DL_PULSE (1 << 22) #define DWC2_GUSBCFG_TERM_SEL_DL_PULSE_OFFSET 22 +#define DWC2_GUSBCFG_INDICATOR_PASSTHROUGH (1 << 24) +#define DWC2_GUSBCFG_INDICATOR_PASSTHROUGH_OFFSET 24 #define DWC2_GUSBCFG_IC_USB_CAP (1 << 26) #define DWC2_GUSBCFG_IC_USB_CAP_OFFSET 26 #define DWC2_GUSBCFG_IC_TRAFFIC_PULL_REMOVE (1 << 27) |