Lines Matching refs:dev_pm
73 struct clk_imx_acm_pm_domains dev_pm; member
262 struct clk_imx_acm_pm_domains *dev_pm) in clk_imx_acm_attach_pm_domains() argument
267 dev_pm->num_domains = of_count_phandle_with_args(dev->of_node, "power-domains", in clk_imx_acm_attach_pm_domains()
269 if (dev_pm->num_domains <= 1) in clk_imx_acm_attach_pm_domains()
272 dev_pm->pd_dev = devm_kmalloc_array(dev, dev_pm->num_domains, in clk_imx_acm_attach_pm_domains()
273 sizeof(*dev_pm->pd_dev), in clk_imx_acm_attach_pm_domains()
275 if (!dev_pm->pd_dev) in clk_imx_acm_attach_pm_domains()
278 dev_pm->pd_dev_link = devm_kmalloc_array(dev, in clk_imx_acm_attach_pm_domains()
279 dev_pm->num_domains, in clk_imx_acm_attach_pm_domains()
280 sizeof(*dev_pm->pd_dev_link), in clk_imx_acm_attach_pm_domains()
282 if (!dev_pm->pd_dev_link) in clk_imx_acm_attach_pm_domains()
285 for (i = 0; i < dev_pm->num_domains; i++) { in clk_imx_acm_attach_pm_domains()
286 dev_pm->pd_dev[i] = dev_pm_domain_attach_by_id(dev, i); in clk_imx_acm_attach_pm_domains()
287 if (IS_ERR(dev_pm->pd_dev[i])) { in clk_imx_acm_attach_pm_domains()
288 ret = PTR_ERR(dev_pm->pd_dev[i]); in clk_imx_acm_attach_pm_domains()
292 dev_pm->pd_dev_link[i] = device_link_add(dev, in clk_imx_acm_attach_pm_domains()
293 dev_pm->pd_dev[i], in clk_imx_acm_attach_pm_domains()
297 if (!dev_pm->pd_dev_link[i]) { in clk_imx_acm_attach_pm_domains()
298 dev_pm_domain_detach(dev_pm->pd_dev[i], false); in clk_imx_acm_attach_pm_domains()
307 device_link_del(dev_pm->pd_dev_link[i]); in clk_imx_acm_attach_pm_domains()
308 dev_pm_domain_detach(dev_pm->pd_dev[i], false); in clk_imx_acm_attach_pm_domains()
319 struct clk_imx_acm_pm_domains *dev_pm) in clk_imx_acm_detach_pm_domains() argument
323 if (dev_pm->num_domains <= 1) in clk_imx_acm_detach_pm_domains()
326 for (i = 0; i < dev_pm->num_domains; i++) { in clk_imx_acm_detach_pm_domains()
327 device_link_del(dev_pm->pd_dev_link[i]); in clk_imx_acm_detach_pm_domains()
328 dev_pm_domain_detach(dev_pm->pd_dev[i], false); in clk_imx_acm_detach_pm_domains()
363 ret = clk_imx_acm_attach_pm_domains(&pdev->dev, &priv->dev_pm); in imx8_acm_clk_probe()
409 clk_imx_acm_detach_pm_domains(&pdev->dev, &priv->dev_pm); in imx8_acm_clk_probe()
420 clk_imx_acm_detach_pm_domains(&pdev->dev, &priv->dev_pm); in imx8_acm_clk_remove()