[PATCH v1 2/6] pmdomain: rockchip: cleanup mutex handling in rockchip_pd_power

Sebastian Reichel sebastian.reichel at collabora.com
Tue Sep 10 10:57:11 PDT 2024


Use the cleanup infrastructure to handle the mutex, which
slightly improve code readability for this function.

Signed-off-by: Sebastian Reichel <sebastian.reichel at collabora.com>
---
 drivers/pmdomain/rockchip/pm-domains.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/pmdomain/rockchip/pm-domains.c b/drivers/pmdomain/rockchip/pm-domains.c
index 0f44d698475b..5e5291dedd28 100644
--- a/drivers/pmdomain/rockchip/pm-domains.c
+++ b/drivers/pmdomain/rockchip/pm-domains.c
@@ -535,13 +535,12 @@ static int rockchip_pd_power(struct rockchip_pm_domain *pd, bool power_on)
 	struct rockchip_pmu *pmu = pd->pmu;
 	int ret;
 
-	mutex_lock(&pmu->mutex);
+	guard(mutex)(&pmu->mutex);
 
 	if (rockchip_pmu_domain_is_on(pd) != power_on) {
 		ret = clk_bulk_enable(pd->num_clks, pd->clks);
 		if (ret < 0) {
 			dev_err(pmu->dev, "failed to enable clocks\n");
-			mutex_unlock(&pmu->mutex);
 			return ret;
 		}
 
@@ -555,7 +554,6 @@ static int rockchip_pd_power(struct rockchip_pm_domain *pd, bool power_on)
 		ret = rockchip_do_pmu_set_power_domain(pd, power_on);
 		if (ret < 0) {
 			clk_bulk_disable(pd->num_clks, pd->clks);
-			mutex_unlock(&pmu->mutex);
 			return ret;
 		}
 
@@ -569,7 +567,6 @@ static int rockchip_pd_power(struct rockchip_pm_domain *pd, bool power_on)
 		clk_bulk_disable(pd->num_clks, pd->clks);
 	}
 
-	mutex_unlock(&pmu->mutex);
 	return 0;
 }
 
-- 
2.45.2




More information about the Linux-rockchip mailing list