On Wednesday 16 November 2016 03:29 AM, Bin Liu wrote: > On Tue, Nov 15, 2016 at 01:37:55PM -0800, Tony Lindgren wrote: >> Now with musb driver implementing generic session bit based >> PM, we need to have the USB PHYs behaving in a sane way for >> platforms implementing PM. >> >> Currently twl4030-usb enables PM in twl4030_phy_power_on() >> and then disables it in twl4030_phy_power_off(). This will >> block PM runtime for the SoC when no cable is connected. >> >> Fix the issue by moving PM runtime autosuspend call to >> happen where it gets called in twl4030_phy_power_on(). >> >> Note that this patch should not be backported to anything >> before commit 467d5c980709 ("usb: musb: Implement session bit >> based runtime PM for musb-core") as before that all the >> glue layers implemented their own PM. >> >> Fixes: 467d5c980709 ("usb: musb: Implement session bit based >> runtime PM for musb-core") >> Tested-by: Ladislav Michl <ladis@xxxxxxxxxxxxxx> >> Tested-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> >> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx> > > I would need Kishon's Acked-by, or he picks it to his tree. Acked-by: Kishon Vijay Abraham I <kishon@xxxxxx> > > Thanks, > -Bin. > >> --- >> drivers/phy/phy-twl4030-usb.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/phy/phy-twl4030-usb.c b/drivers/phy/phy-twl4030-usb.c >> --- a/drivers/phy/phy-twl4030-usb.c >> +++ b/drivers/phy/phy-twl4030-usb.c >> @@ -459,8 +459,6 @@ static int twl4030_phy_power_off(struct phy *phy) >> struct twl4030_usb *twl = phy_get_drvdata(phy); >> >> dev_dbg(twl->dev, "%s\n", __func__); >> - pm_runtime_mark_last_busy(twl->dev); >> - pm_runtime_put_autosuspend(twl->dev); >> >> return 0; >> } >> @@ -472,6 +470,8 @@ static int twl4030_phy_power_on(struct phy *phy) >> dev_dbg(twl->dev, "%s\n", __func__); >> pm_runtime_get_sync(twl->dev); >> schedule_delayed_work(&twl->id_workaround_work, HZ); >> + pm_runtime_mark_last_busy(twl->dev); >> + pm_runtime_put_autosuspend(twl->dev); >> >> return 0; >> } >> -- >> 2.10.2 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html