diff options
author | Tony Lindgren <tony@atomide.com> | 2018-12-03 00:51:35 +0100 |
---|---|---|
committer | Kishon Vijay Abraham I <kishon@ti.com> | 2018-12-12 05:31:39 +0100 |
commit | 2ad2af0816221ac9ce9d5c8b979868b58a696c40 (patch) | |
tree | c0801ef3a22aa9c1c8d6ac04b9820e847450b578 /.mailmap | |
parent | phy: renesas: rcar-gen3-usb2: follow the hardware manual procedure (diff) | |
download | linux-2ad2af0816221ac9ce9d5c8b979868b58a696c40.tar.xz linux-2ad2af0816221ac9ce9d5c8b979868b58a696c40.zip |
phy: mapphone-mdm6600: Improve phy related runtime PM calls
I noticed that phy_pm_runtime_get_sync() and phy_pm_runtime_put() are not
currently doing anything for phy-mapphone-mdm6600, only the sysfs interface
for works for "auto" and "on".
This is because of the shared GPIO pins between mdm6600 USB port and n_gsm
port. We have not enabled runtime PM for the phy driver until after we've
booted up mdm6600 properly to the USB mode. Otherwise phy_create() would
have called pm_runtime_enable() and pm_runtime_no_callbacks() automatically
on init.
Let's fix this by registering the phy a bit later after we've powered up
the mdm6600 USB port.
And as the PM runtime support is only needed for the n_gsm mode and not for
USB, we can allow the device to idle between phy_mdm6600_power_on() and
phy_mdm6600_power_off(). Note that for suspend, runtime_pm is already
disabled for the phy so we need to check for pm_runtime_enabled().
Cc: Johan Hovold <jhovold@gmail.com>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Diffstat (limited to '.mailmap')
0 files changed, 0 insertions, 0 deletions