On 13/05/2026 22:24, Erikas Bitovtas wrote:
+static int vcodec_domains_enable(struct venus_core *core)
+{
+       const struct venus_resources *res = core->res;
+       struct device *pd_dev;
+       int i = 0, ret;
+
+       if (!res->vcodec_pmdomains)
+               return 0;
+
+       for (; i < res->vcodec_pmdomains_num; i++) {
+               pd_dev = core->pmdomains->pd_devs[i];
+               ret = pm_runtime_resume_and_get(pd_dev);
+               if (ret)
+                       goto err;
+
+               ret = dev_pm_genpd_set_hwmode(pd_dev, true);
+               if (ret && ret != -EOPNOTSUPP)
+                       goto err;
+       }
+
+       return 0;
+err:
+       while (i--) {
+               pd_dev = core->pmdomains->pd_devs[i];
+               dev_pm_genpd_set_hwmode(pd_dev, false);
+               pm_runtime_put_sync(pd_dev);
+       }
\n> +        return ret;
+}
+

+

Reviewed-by: Bryan O'Donoghue <[email protected]>

---
bod

Reply via email to