[PATCH v3 05/43] drm/bridge: analogix_dp: Don't power bridge in analogix_dp_bind
Marek Szyprowski
m.szyprowski at samsung.com
Thu Mar 1 05:37:57 PST 2018
Hi,
On 2018-01-30 21:28, Thierry Escande wrote:
> From: zain wang <wzz at rock-chips.com>
>
> The bridge does not need to be powered in analogix_dp_bind(), so
> remove the calls to pm_runtime_get()/phy_power_on()/analogix_dp_init_dp()
> as well as their power-off counterparts.
>
> Cc: Stéphane Marchesin <marcheu at chromium.org>
> Signed-off-by: zain wang <wzz at rock-chips.com>
> Signed-off-by: Caesar Wang <wxt at rock-chips.com>
> [the patch originally just removed the power_on portion, seanpaul removed
> the power off code as well as improved the commit message]
> Signed-off-by: Sean Paul <seanpaul at chromium.org>
> Signed-off-by: Thierry Escande <thierry.escande at collabora.com>
> ---
> drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 10 ----------
> 1 file changed, 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
> index cb5e18d6ba04..1477ea9ba85d 100644
> --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
> +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
> @@ -1382,11 +1382,6 @@ analogix_dp_bind(struct device *dev, struct drm_device *drm_dev,
>
> pm_runtime_enable(dev);
>
> - pm_runtime_get_sync(dev);
> - phy_power_on(dp->phy);
> -
> - analogix_dp_init_dp(dp);
> -
> ret = devm_request_threaded_irq(&pdev->dev, dp->irq,
> analogix_dp_hardirq,
> analogix_dp_irq_thread,
> @@ -1414,15 +1409,10 @@ analogix_dp_bind(struct device *dev, struct drm_device *drm_dev,
> goto err_disable_pm_runtime;
> }
>
> - phy_power_off(dp->phy);
> - pm_runtime_put(dev);
> -
> return dp;
>
> err_disable_pm_runtime:
>
> - phy_power_off(dp->phy);
> - pm_runtime_put(dev);
> pm_runtime_disable(dev);
>
> return ERR_PTR(ret);
Once this change is applied, there is also no need to keep dp->clock
prepared & enabled between bind/unbind.
analogix_dp_set_bridge() and analogix_dp_bridge_disable() properly manage
dp->clock on their own.
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland
More information about the Linux-rockchip
mailing list