[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <A2CA0424C0A6F04399FB9E1CD98E0304844EBC6A@US01WEMBX2.internal.synopsys.com>
Date: Fri, 14 Nov 2014 20:17:16 +0000
From: Paul Zimmerman <Paul.Zimmerman@...opsys.com>
To: Julius Werner <jwerner@...omium.org>,
Kever Yang <kever.yang@...k-chips.com>,
Alan Stern <stern@...land.harvard.edu>
CC: Doug Anderson <dianders@...omium.org>, Felipe Balbi <balbi@...com>,
"Dinh Nguyen" <dinguyen@...nsource.altera.com>,
Romain Perier <romain.perier@...il.com>,
Heiko Stuebner <heiko@...ech.de>,
Sonny Rao <sonnyrao@...omium.org>,
Addy Ke <addy.ke@...k-chips.com>,
Eddie Cai <cf@...k-chips.com>, lyz <lyz@...k-chips.com>,
wulf <wulf@...k-chips.com>, Tao Huang <huangtao@...k-chips.com>,
"open list:ARM/Rockchip SoC..." <linux-rockchip@...ts.infradead.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v3] usb: dwc2: add bus suspend/resume for dwc2
> From: jwerner@...gle.com [mailto:jwerner@...gle.com] On Behalf Of Julius Werner
> Sent: Thursday, November 13, 2014 8:50 PM
>
> > I will figure out how to make dwc2 detect the device connect after auto
> > suspend,
> > or disable the auto suspend feature for the dwc2 hcd.
>
> I think auto-suspend of the root hub device (which is what calls
> bus_suspend, but is not the host controller device itself) is expected
> to always happen and not really meant to be disabled. I'm surprised
> that the controller would fail to come back up, though. Does removing
> the PCGCTL part make it work? That's the only thing I can think of
> (but then again the function should immediately return if the port is
> not in L0, so if there is nothing plugged in the suspend shouldn't
> really do anything).
Hi guys,
I don't have any experience with suspend/resume on the dwc2 controller
I'm afraid. One suggestion would be to look at our Synopsys vendor
driver to see how it is handled there.
That driver is part of the Raspberry Pi upstream kernel, which you
can find at https://github.com/raspberrypi/linux. The driver is
under drivers/usb/host/dwc_otg.
In particular, in dwc_otg_cil_intr.c there is a function named
dwc_otg_handle_wakeup_detected_intr() which might be of interest.
Unfortunately, that driver code is rather convoluted, so it may be
difficult to figure out exactly what the driver is doing.
--
Paul
Powered by blists - more mailing lists