Message ID | 20210329195255.v2.6.Ia75c9ffe2a2582393a8532d244da86f18b4c9b21@changeid (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | drm: Fix EDID reading on ti-sn65dsi86 | expand |
W dniu 30.03.2021 o 04:53, Douglas Anderson pisze: > We prepared the panel in pre_enable() so we should unprepare it in > post_disable() to match. > > This becomes important once we start using pre_enable() and > post_disable() to make sure things are powered on (and then off again) > when reading the EDID. > > Signed-off-by: Douglas Anderson <dianders@chromium.org> Reviewed-by: Andrzej Hajda <a.hajda@samsung.com> Regards Andrzej > --- > > (no changes since v1) > > drivers/gpu/drm/bridge/ti-sn65dsi86.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c > index e8e523b3a16b..50a52af8e39f 100644 > --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c > +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c > @@ -460,8 +460,6 @@ static void ti_sn_bridge_disable(struct drm_bridge *bridge) > regmap_write(pdata->regmap, SN_ML_TX_MODE_REG, 0); > /* disable DP PLL */ > regmap_write(pdata->regmap, SN_PLL_ENABLE_REG, 0); > - > - drm_panel_unprepare(pdata->panel); > } > > static u32 ti_sn_bridge_get_dsi_freq(struct ti_sn_bridge *pdata) > @@ -877,6 +875,8 @@ static void ti_sn_bridge_post_disable(struct drm_bridge *bridge) > { > struct ti_sn_bridge *pdata = bridge_to_ti_sn_bridge(bridge); > > + drm_panel_unprepare(pdata->panel); > + > clk_disable_unprepare(pdata->refclk); > > pm_runtime_put_sync(pdata->dev);
diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c index e8e523b3a16b..50a52af8e39f 100644 --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c @@ -460,8 +460,6 @@ static void ti_sn_bridge_disable(struct drm_bridge *bridge) regmap_write(pdata->regmap, SN_ML_TX_MODE_REG, 0); /* disable DP PLL */ regmap_write(pdata->regmap, SN_PLL_ENABLE_REG, 0); - - drm_panel_unprepare(pdata->panel); } static u32 ti_sn_bridge_get_dsi_freq(struct ti_sn_bridge *pdata) @@ -877,6 +875,8 @@ static void ti_sn_bridge_post_disable(struct drm_bridge *bridge) { struct ti_sn_bridge *pdata = bridge_to_ti_sn_bridge(bridge); + drm_panel_unprepare(pdata->panel); + clk_disable_unprepare(pdata->refclk); pm_runtime_put_sync(pdata->dev);
We prepared the panel in pre_enable() so we should unprepare it in post_disable() to match. This becomes important once we start using pre_enable() and post_disable() to make sure things are powered on (and then off again) when reading the EDID. Signed-off-by: Douglas Anderson <dianders@chromium.org> --- (no changes since v1) drivers/gpu/drm/bridge/ti-sn65dsi86.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)