Re: [PATCH 6/6] phy: twl4030-usb: Fix for musb session bit based PM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




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



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux