Am Dienstag, 30. Januar 2018, 21:28:35 CET schrieb Thierry Escande: > 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, Not 100% sure here, as the driver has the request-irq + disable-irq hack here. So a pending interrupt could possibly fire between request and disable. Right now the block should be on, but can it still handle such an irq when the power is removed? So before removing the power here, we might want something similar to what Marc posted for the vop [0] for the analogix-dp? Heiko [0] https://patchwork.kernel.org/patch/10210513/