Re: Question about suspend/resume clock handling in dwc3-of-simple.c

From: Guenter Roeck
Date: Tue Sep 13 2016 - 09:11:04 EST


On 09/12/2016 10:35 PM, Felipe Balbi wrote:

Hi,

Guenter Roeck <linux@xxxxxxxxxxxx> writes:
Should it be clk_disable_unprepare(), or maybe something like the
following

if (!pm_runtime_status_suspended(dev))
clk_disable_unprepare();
else
clk_unprepare();

I'm not sure how balanced those calls are, yeah. I don't have HW to test
PM with. But note that as it is, there is no actual runtime PM support,
so clk_disable_unprepare() will always be necessary.

Perhaps we will find further issues when someone tries to use runtime PM
with dwc3-of-simple. ;-)


We are working on code derived from it, so unless I can convince the author
that he can not just use clk_unprepare() I suspect we'll hit the problem.
If so, I'll let you know.

Are you sending that upstream? Depending on your requirements, it might
be easier to patch dwc3-of-simple.c then adding yet another glue layer :-)

Yes. It will be a glue layer. So far that looks like the cleanest solution.

Thanks,
Guenter