anx6345_power_on() enables dvdd12 then dvdd25; on dvdd25 failure it returns
directly (void function), leaking dvdd12 (poweroff disables both). Disable
dvdd12 before returning.
Fixes: 6aa192698089 ("drm/bridge: Add Analogix anx6345 support")
Signed-off-by: Tang Bin <[email protected]>
---
drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c
b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c
index 407834a03..f84427eae 100644
--- a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c
+++ b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c
@@ -294,6 +294,7 @@ static void anx6345_poweron(struct anx6345 *anx6345)
if (err) {
DRM_ERROR("Failed to enable dvdd25 regulator: %d\n",
err);
+ regulator_disable(anx6345->dvdd12);
return;
}
--
2.52.0.windows.1