[U-Boot] [PATCH v4 2/4] EHCI: add callback ehci_fixup

Marek Vasut marek.vasut at gmail.com
Sun Sep 25 19:41:25 CEST 2011


On Sunday, September 25, 2011 07:25:08 PM Jana Rapava wrote:
> Add callback to ehci_fixup to prepare
> for solving the problem with VBUS reset on Efika.
> 
> Signed-off-by: Jana Rapava <fermata7 at gmail.com>
> Cc: Marek Vasut <marek.vasut at gmail.com>
> Cc: Remy Bohmer <linux at bohmer.net>
> Cc: Stefano Babic <sbabic at denx.de>
> ---
> Changes for v2:
>       - changed to proper patch
> Changes for v3:
>       - merged other USB patches from u-boot-pxa/efikasb
>       - offset-based access changed to struct-based access
>       - use {clrset,clr,set}bits_le32() calls
>       - CodingStyle and naming cleanup
> Changes for v4:
>        - split into patchset
>        - add callback ehci_fixup
> 
>  drivers/usb/host/ehci-hcd.c |   12 ++++++++++--
>  1 files changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
> index bdadd46..8d31921 100644
> --- a/drivers/usb/host/ehci-hcd.c
> +++ b/drivers/usb/host/ehci-hcd.c
> @@ -26,6 +26,7 @@
>  #include <asm/io.h>
>  #include <malloc.h>
>  #include <watchdog.h>
> +#include <usb/ehci-fsl.h>
> 
>  #include <usb/ehci.h>
> 
> @@ -536,6 +537,14 @@ static inline int min3(int a, int b, int c)
>  	return a;
>  }
> 
> +inline void __ehci_fixup(uint32_t *status_reg, uint32_t *reg_ref)
> +{
> +	wait_ms(50);
> +}
> +
> +void ehci_fixup(uint32_t *status_reg, uint32_t *reg_ref)
> +	 __attribute__((weak, alias("__ehci_fixup")));
> +
>  int
>  ehci_submit_root(struct usb_device *dev, unsigned long pipe, void *buffer,
>  		 int length, struct devrequest *req)
> @@ -709,8 +718,7 @@ ehci_submit_root(struct usb_device *dev, unsigned long
> pipe, void *buffer, * usb 2.0 specification say 50 ms resets on
>  				 * root
>  				 */
> -				wait_ms(50);
> -				/* terminate the reset */
> +				ehci_fixup(status_reg, &reg);
>  				ehci_writel(status_reg, reg & ~EHCI_PS_PR);
>  				/*
>  				 * A host controller must terminate the reset

Dear Jana Rapava,

please document this properly and don't drop comments.

Cheers


More information about the U-Boot mailing list