Subject: MUSB dual-role on AM335x behaving weirdly

From: [email-masked] (Gregory CLEMENT)
Date: Tue, 04 Aug 2015 16:23:02 +0200

Hi again,
On 04/08/2015 15:08, Gregory CLEMENT wrote:
> Hi Bin,
> 
> On 02/07/2015 19:05, Bin Liu wrote:
>> Hi,
>>
>> On Thu, Jul 2, 2015 at 2:16 AM, Gregory CLEMENT
>> <[email-masked]> wrote:
>>> Hi Felipe,
>>>
>>> On 27/05/2015 11:42, Alexandre Belloni wrote:
>>>> Hi,
>>>>
>>>> On 26/05/2015 at 09:51:18 -0500, Felipe Balbi wrote :
>>>>> On Thu, May 14, 2015 at 04:36:33PM -0500, Bin Liu wrote:
>>>>>> Alexandre,
>>>>>>
>>>>>> On Thu, May 14, 2015 at 4:26 PM, Alexandre Belloni
>>>>>> <[email-masked]> wrote:
>>>>>>> On 14/05/2015 at 16:16:12 -0500, Bin Liu wrote :
>>>>>>>> I think I found the root cause of the problem: board design issue - I
>>>>>>>> bet the custom board has too much cap on VBUS line. It should be <
>>>>>>>> 10uF.
>>>>>>>>
>>>>>>>
>>>>>>> We have a custom board that exhibits the issue but it only has a 100nF
>>>>>>> cap on VBUS.
>>>>>>
>>>>>> Have you measured the VBUS discharging? Is there any way to share your
>>>>>> schematics?
>>>>>
>>>>> Alexandre, any further comments ?
>>>>>
>>>>
>>>> Yeah, I have just got more info.
>>>>
>>>> This is the relevant part of the schematic:
>>>> http://free-electrons.com/~alexandre/usb.png
>>>>
>>>> The total VBUS capacitance is 200nF and the USB0 pins are connected
>>>> directly to the AM3358 pins. U1 is actually not fitted.
>>>>
>>>> We didn't measure VBUS discharging but we observe the OTG pin sensing
>>>> stops when plugging an OTG cable without any device.
>>>
>>> Do you have any news about this topic?
>>>
>>>
>>> Is there something else that we can do to help solving this issue?
>>
>> In the case of CONFIG_USB_MUSB_DUAL_ROLE=y and dr_mode=otg, how is the
>> gadget driver configured? It has to be a module not built-in.
> 
> Indeed when I configured CONFIG_USB_MUSB_HDRC=m and CONFIG_USB_MUSB_DSPS=m
> it worked seamless.
> 

Actually it didn't worked. And now sometimes I even received continuously
the following message:

 musb_bus_suspend 2484: trying to suspend as a_wait_vfall while active

Gregory

-- 
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com