From 35c77451c57e4bee4a1c0a43a719aeb47c1f3e0f Mon Sep 17 00:00:00 2001 From: Wyon Bi Date: Wed, 23 Jan 2019 10:32:59 +0800 Subject: [PATCH] Revert "drm/bridge: analogix_dp: Fix unbalanced phy_power_on" This reverts commit e82ecb98b4c82448ae8fa215c08074b3ad5a2599. Change-Id: Ice373a612fdd7fa457ca0ce18026128b83edcc1f Signed-off-by: Wyon Bi --- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c index 907846f88d14..c34d716aa64c 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -861,14 +861,10 @@ static int analogix_dp_loader_protect(struct drm_connector *connector, bool on) if (dp->plat_data->panel) drm_panel_loader_protect(dp->plat_data->panel, on); - - if (on) { + if (on) pm_runtime_get_sync(dp->dev); - phy_power_on(dp->phy); - } else { - phy_power_off(dp->phy); + else pm_runtime_put(dp->dev); - } return 0; } @@ -1213,7 +1209,7 @@ analogix_dp_bind(struct device *dev, struct drm_device *drm_dev, dp->phy = devm_phy_get(dp->dev, "dp"); if (IS_ERR(dp->phy)) { - dev_dbg(dp->dev, "no DP phy configured\n"); + dev_err(dp->dev, "no DP phy configured\n"); ret = PTR_ERR(dp->phy); if (ret) { /* @@ -1260,6 +1256,8 @@ analogix_dp_bind(struct device *dev, struct drm_device *drm_dev, return ERR_PTR(-ENODEV); } + phy_power_on(dp->phy); + if (dp->plat_data->panel) { if (drm_panel_prepare(dp->plat_data->panel)) { DRM_ERROR("failed to setup the panel\n");