RE: [PATCH] arm:da850: register musb device

From: Manjunathappa, Prakash
Date: Wed Mar 14 2012 - 02:17:25 EST


Hi Sergei,

On Tue, Mar 13, 2012 at 22:40:41, Sergei Shtylyov wrote:
> On 03/13/2012 06:03 PM, Manjunathappa, Prakash wrote:
>
> > Properly set up the OTG mode thru the CFGCHIP2 register, enable the
> > USB0_DRVVBUS pin,
>
> I don't see where you are enabling it.
>

Yes, I will correct the message.

> > and finally register the MUSB platform device.
> >
> > Signed-off-by: Ajay Kumar Gupta<ajay.gupta@xxxxxx>
> > Signed-off-by: Manjunathappa, Prakash<prakash.pm@xxxxxx>
> > ---
> > Patche are on top below posted patches:
> > http://www.spinics.net/lists/linux-usb/msg59656.html
>
> > arch/arm/mach-davinci/board-da850-evm.c | 12 ++++++++++++
> > arch/arm/mach-davinci/usb.c | 9 +++++++++
> > 2 files changed, 21 insertions(+), 0 deletions(-)
>
> > diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c
> > index 178d178..539e12c 100644
> > --- a/arch/arm/mach-davinci/board-da850-evm.c
> > +++ b/arch/arm/mach-davinci/board-da850-evm.c
> > @@ -787,6 +787,18 @@ static __init void da850_evm_usb_init(void)
> > */
> > cfgchip2&= ~CFGCHIP2_USB1PHYCLKMUX;
> > cfgchip2 |= CFGCHIP2_USB2PHYCLKMUX;
> > + /*
> > + * We have to override VBUS/ID signals when MUSB is configured into the
> > + * host-only mode -- ID pin will float if no cable is connected, so the
> > + * controller won't be able to drive VBUS thinking that it's a B-device.
> > + * Otherwise, we want to use the OTG mode and enable VBUS comparators.
> > + */
> > + cfgchip2 &= ~CFGCHIP2_OTGMODE;
> > +#if CONFIG_USB_MUSB_DA8XX
>
> This #ifdef doesn't make sense. It will make driver always work in host mode.
>

I will change it to support OTG.

> > + cfgchip2 |= CFGCHIP2_FORCE_HOST;
> > +#else
> > + cfgchip2 |= CFGCHIP2_SESENDEN | CFGCHIP2_VBDTCTEN;
>
> This is what you need to leave. The driver should always work in OTG mode now.
>

Correct, I will fix this.

> > +#endif
> >
> > __raw_writel(cfgchip2, DA8XX_SYSCFG0_VIRT(DA8XX_CFGCHIP2_REG));
> >
> > diff --git a/arch/arm/mach-davinci/usb.c b/arch/arm/mach-davinci/usb.c
> > index 25c3520..a941dc5 100644
> > --- a/arch/arm/mach-davinci/usb.c
> > +++ b/arch/arm/mach-davinci/usb.c
> > @@ -284,6 +284,15 @@ void __init da8xx_board_usb_init(const short pins[],
> > goto usb11_setup_fail;
> > }
> >
> > + /*
> > + * TPS2065 switch @ 5V supplies 1 A (sustains 1.5 A),
> > + * with the power on to power good time of 3 ms.
> > + */
> > + ret = da8xx_register_usb20(1000, 3);
> > + if (ret)
> > + pr_warning("%s: USB 2.0 registration failed: %d\n",
> > + __func__, ret);
>
> Er, why this code is moved there? And how will this work on DA830 -- try to
> register MUSB twice? Place this in the board file please where it belongs.
>

Yes, I will revert this change.

Thanks,
Prakash

> WBR, Sergei
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/