[PATCH 1/3] drm/bridge: microchip-lvds: Revert clk_prepare_enable() in case of failure

Claudiu Beznea claudiu.beznea at tuxon.dev
Tue Aug 27 16:12:21 UTC 2024


In case pm_runtime_get_sync() fails the clock remains enabled. Disable
it to save power on this failure scenario.

Fixes: 179b0769fc5f ("drm/bridge: add lvds controller support for sam9x7")
Signed-off-by: Claudiu Beznea <claudiu.beznea at tuxon.dev>
---
 drivers/gpu/drm/bridge/microchip-lvds.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/bridge/microchip-lvds.c b/drivers/gpu/drm/bridge/microchip-lvds.c
index b8313dad6072..027292ab0197 100644
--- a/drivers/gpu/drm/bridge/microchip-lvds.c
+++ b/drivers/gpu/drm/bridge/microchip-lvds.c
@@ -125,6 +125,7 @@ static void mchp_lvds_enable(struct drm_bridge *bridge)
 
 	ret = pm_runtime_get_sync(lvds->dev);
 	if (ret < 0) {
+		clk_disable_unprepare(lvds->pclk);
 		dev_err(lvds->dev, "failed to get pm runtime: %d\n", ret);
 		return;
 	}
-- 
2.39.2



More information about the dri-devel mailing list