On 3/12/24 8:03 AM, Sumit Garg wrote:
power_domain_on/off() isn't refcounted and power domain bus shouldn't be
turned off for a single peripheral domain as it would negatively affect
other peripheral domains. So lets just skip turning off bus power
domain.

What exactly is the issue and how did you trigger it ?

Details please.

Fixes: 898e7610c62a ("imx: power-domain: Add i.MX8MP HSIOMIX driver")
Signed-off-by: Sumit Garg <sumit.g...@linaro.org>
---
  drivers/power/domain/imx8mp-hsiomix.c | 6 +-----
  1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/drivers/power/domain/imx8mp-hsiomix.c 
b/drivers/power/domain/imx8mp-hsiomix.c
index e2d772c5ec7..448746432a2 100644
--- a/drivers/power/domain/imx8mp-hsiomix.c
+++ b/drivers/power/domain/imx8mp-hsiomix.c
@@ -50,7 +50,7 @@ static int imx8mp_hsiomix_on(struct power_domain 
*power_domain)
ret = power_domain_on(domain);
        if (ret)
-               goto err_pd;
+               return ret;
ret = clk_enable(&priv->clk_usb);
        if (ret)
@@ -63,8 +63,6 @@ static int imx8mp_hsiomix_on(struct power_domain 
*power_domain)
err_clk:
        power_domain_off(domain);
-err_pd:
-       power_domain_off(&priv->pd_bus);
        return ret;

Why not add counter into imx8mp_hsiomix_priv structure in this driver ?

Reply via email to