[U-Boot] usb: dwc2: disable erroneous overcurrent condition

Marek Vasut marex at denx.de
Sat Mar 5 00:12:53 CET 2016


On 03/04/2016 10:05 PM, dinguyen at opensource.altera.com wrote:
> From: Dinh Nguyen <dinguyen at opensource.altera.com>
> 
> For the case where an external VBUS is used, we should enable the external
> VBUS comparator in the driver. This would prevent an unnecessary overcurrent
> error which would then disable the host port.
> 
> The overcurrent condition was happening on the SoCFPGA Cyclone5 devkit, thus
> USB was not working on the devkit. This patch fixes that problem.
> 
> Signed-off-by: Dinh Nguyen <dinguyen at opensource.altera.com>
> ---
>  drivers/usb/host/dwc2.c |    2 ++
>  drivers/usb/host/dwc2.h |    2 ++
>  2 files changed, 4 insertions(+)
> 
> diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
> index c6727c3..d9a8d2d 100644
> --- a/drivers/usb/host/dwc2.c
> +++ b/drivers/usb/host/dwc2.c
> @@ -264,6 +264,8 @@ 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_INT_VBUS_INDICATOR |
> +		   DWC2_GUSBCFG_INDICATOR_PASSTHROUGH);

Well why don't you wrap it into the previous usbcfg |= , one line above?

Can you send a V2 real quick or shall I fix it ?/

>  #else
>  	usbcfg &= ~DWC2_GUSBCFG_ULPI_EXT_VBUS_DRV;
>  #endif
> diff --git a/drivers/usb/host/dwc2.h b/drivers/usb/host/dwc2.h
> index 594757b..4482dc6 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)
> 


-- 
Best regards,
Marek Vasut


More information about the U-Boot mailing list