On Fri, May 3, 2024 at 5:12 PM Lucas Stach <l.stach@xxxxxxxxxxxxxx> wrote: > > The clock is already managed by runtime PM, which is properly invoked > from the analogix_dp_set_bridge function, so there is no need for an > additional reference. > > Signed-off-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx> > --- > drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 11 +---------- > 1 file changed, 1 insertion(+), 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 9f1dfa6f2175..311e1e67486d 100644 > --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > @@ -1258,12 +1258,6 @@ static int analogix_dp_set_bridge(struct analogix_dp_device *dp) > > pm_runtime_get_sync(dp->dev); > > - ret = clk_prepare_enable(dp->clock); > - if (ret < 0) { > - DRM_ERROR("Failed to prepare_enable the clock clk [%d]\n", ret); > - goto out_dp_clk_pre; > - } > - > if (dp->plat_data->power_on) > dp->plat_data->power_on(dp->plat_data); > > @@ -1297,8 +1291,7 @@ static int analogix_dp_set_bridge(struct analogix_dp_device *dp) > phy_power_off(dp->phy); > if (dp->plat_data->power_off) > dp->plat_data->power_off(dp->plat_data); > - clk_disable_unprepare(dp->clock); > -out_dp_clk_pre: > + > pm_runtime_put_sync(dp->dev); > > return ret; > @@ -1367,8 +1360,6 @@ static void analogix_dp_bridge_disable(struct drm_bridge *bridge) > analogix_dp_set_analog_power_down(dp, POWER_ALL, 1); > phy_power_off(dp->phy); > > - clk_disable_unprepare(dp->clock); > - > pm_runtime_put_sync(dp->dev); > > ret = analogix_dp_prepare_panel(dp, false, true); > -- > 2.39.2 > Reviewed-by: Robert Foss <rfoss@xxxxxxxxxx>