Thread (36 messages) 36 messages, 7 authors, 2023-07-21

RE: [PATCH v2 2/3] usb: chipidea: imx: support disabling runtime-pm

From: Peter Chen <hidden>
Date: 2020-07-20 08:06:28
Also in: linux-arm-kernel, linux-usb, lkml

 
On Mon, 2020-07-20 at 03:44 +0000, Peter Chen wrote:
quoted
quoted
On Wed, 2020-07-15 at 00:51 +0000, Peter Chen wrote:
quoted
quoted
The Toradex Colibri iMX6ULL board has a special USB hardware
design.
With runtime-pm enabled USB reset itself continuously.
Furthermore
the OTG port is also not enumerating devices if the Chipidea IP
is in runtime sleep mode and a device or host gets plugged in.
Hi Philippe,

You may describe the detail what's the special USB hardware design
for your board,
If I only knew the root-cause of that problem - unfortunately I
don't.
That's also why I have such a hard time to describe it.
quoted
and why it causes the problem, and why disable runtime pm could
fix this issue, then,
I cannot provide the 'why' part yet. I'll try something more and
hope I can provide you guys with the exact description.
quoted
the other users could know if it could apply to their platforms or
not in future.
I only found out about it because you were pointing me in that
direction. I debugged for hours now and didn't came to the
root-cause of the issue. I think to really understand it I would
need to know much more about the Chipidea IP.

I'll get back to you guys with a proposal for a new description.
Philippe, is it possible to share your USB hardware design at 6ULL?
It's actually pretty simple: We have on USB_OTG1_VBUS a 1uF capacitor and
+3.0V on VDD_USB_CAP together with 100n and 10u bypass caps. Now the big
problem is that the driver can not detect the 5V on VBUS signal.
Could you confirm it does not see VBUS at register OTGSC? If it is, how can it work with runtime
disabled, the USBCMD.RS setting (ci_hdrc_gadget_connect is called) depends on VBUS.

Peter
I tried to 'inject' 5V to that pin last week and things got really better with runtime-pm.
But I still thinks disabling it for our board would make sense.

I'll send a new description today where I try to point to VBUS signal not connected.

Philippe
quoted
And how ci_hdrc_gadget_connect is called when the runtime pm is
disabled?

Thanks,
Peter
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help