[RFT/PATCH] serial: omap: prevent resume if device is not suspended.
Russell King - ARM Linux
linux at arm.linux.org.uk
Tue Sep 25 04:30:29 EDT 2012
On Tue, Sep 25, 2012 at 01:52:03PM +0530, Poddar, Sourav wrote:
> Hi Greg,
>
> Ping on this?
>
> On Tue, Sep 18, 2012 at 6:10 PM, Sourav Poddar <sourav.poddar at ti.com> wrote:
> > Greg's tty-next is not booting on 2420 based N800. The failure is
> > observed at serial init itself. The reason might be that n800 tries to
> > resume even though it is not suspended before.
How is this happening? I think that needs proper investigation - or if
it's had more investigation, then the results needs to be included in
the commit description so that everyone can understand the issue here.
We should not be resuming a device which hasn't been suspended. Maybe
the runtime PM enable sequence is wrong, and that's what should be fixed
instead?
This sequence in the probe() function:
pm_runtime_irq_safe(&pdev->dev);
pm_runtime_enable(&pdev->dev);
pm_runtime_get_sync(&pdev->dev);
would enable runtime PM while the s/w state indicates that it's disabled,
and then that pm_runtime_get_sync() will want to resume the device. See
the section "5. Runtime PM Initialization, Device Probing and Removal"
in Documentation/power/runtime_pm.txt, specifically the second paragraph
of that section.
More information about the linux-arm-kernel
mailing list