Skip to content

Commit

Permalink
phy: mapphone-mdm6600: Fix PM error handling in phy_mdm6600_probe
Browse files Browse the repository at this point in the history
[ Upstream commit d644e0d ]

The pm_runtime_enable will increase power disable depth.
If the probe fails, we should use pm_runtime_disable() to balance
pm_runtime_enable(). And use pm_runtime_dont_use_autosuspend() to
undo pm_runtime_use_autosuspend()
In the PM Runtime docs:
    Drivers in ->remove() callback should undo the runtime PM changes done
    in ->probe(). Usually this means calling pm_runtime_disable(),
    pm_runtime_dont_use_autosuspend() etc.

We should do this in error handling.

Fixes: f7f50b2 ("phy: mapphone-mdm6600: Add runtime PM support for n_gsm on USB suspend")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Link: https://lore.kernel.org/r/20220301024615.31899-1-linmq006@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
Yuuoniy authored and gregkh committed May 9, 2022
1 parent e448e05 commit 92fb297
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion drivers/phy/motorola/phy-mapphone-mdm6600.c
Expand Up @@ -629,7 +629,8 @@ static int phy_mdm6600_probe(struct platform_device *pdev)
cleanup:
if (error < 0)
phy_mdm6600_device_power_off(ddata);

pm_runtime_disable(ddata->dev);
pm_runtime_dont_use_autosuspend(ddata->dev);
return error;
}

Expand Down

0 comments on commit 92fb297

Please sign in to comment.