Lines Matching refs:dom

401 				     struct meson_ee_pwrc_domain *dom)  in meson_ee_pwrc_init_domain()  argument
405 dom->pwrc = pwrc; in meson_ee_pwrc_init_domain()
406 dom->num_rstc = dom->desc.reset_names_count; in meson_ee_pwrc_init_domain()
407 dom->num_clks = dom->desc.clk_names_count; in meson_ee_pwrc_init_domain()
409 if (dom->num_rstc) { in meson_ee_pwrc_init_domain()
412 if (count != dom->num_rstc) in meson_ee_pwrc_init_domain()
414 count, dom->desc.name); in meson_ee_pwrc_init_domain()
416 dom->rstc = devm_reset_control_array_get(&pdev->dev, false, in meson_ee_pwrc_init_domain()
418 if (IS_ERR(dom->rstc)) in meson_ee_pwrc_init_domain()
419 return PTR_ERR(dom->rstc); in meson_ee_pwrc_init_domain()
422 if (dom->num_clks) { in meson_ee_pwrc_init_domain()
423 int ret = devm_clk_bulk_get_all(&pdev->dev, &dom->clks); in meson_ee_pwrc_init_domain()
427 if (dom->num_clks != ret) { in meson_ee_pwrc_init_domain()
429 ret, dom->desc.name); in meson_ee_pwrc_init_domain()
430 dom->num_clks = ret; in meson_ee_pwrc_init_domain()
434 dom->base.name = dom->desc.name; in meson_ee_pwrc_init_domain()
435 dom->base.power_on = meson_ee_pwrc_on; in meson_ee_pwrc_init_domain()
436 dom->base.power_off = meson_ee_pwrc_off; in meson_ee_pwrc_init_domain()
449 if (dom->num_clks && dom->desc.get_power && !dom->desc.get_power(dom)) { in meson_ee_pwrc_init_domain()
450 ret = clk_bulk_prepare_enable(dom->num_clks, dom->clks); in meson_ee_pwrc_init_domain()
454 dom->base.flags = GENPD_FLAG_ALWAYS_ON; in meson_ee_pwrc_init_domain()
455 ret = pm_genpd_init(&dom->base, NULL, false); in meson_ee_pwrc_init_domain()
459 ret = pm_genpd_init(&dom->base, NULL, in meson_ee_pwrc_init_domain()
460 (dom->desc.get_power ? in meson_ee_pwrc_init_domain()
461 dom->desc.get_power(dom) : true)); in meson_ee_pwrc_init_domain()
518 struct meson_ee_pwrc_domain *dom = &pwrc->domains[i]; in meson_ee_pwrc_probe() local
520 memcpy(&dom->desc, &match->domains[i], sizeof(dom->desc)); in meson_ee_pwrc_probe()
522 ret = meson_ee_pwrc_init_domain(pdev, pwrc, dom); in meson_ee_pwrc_probe()
526 pwrc->xlate.domains[i] = &dom->base; in meson_ee_pwrc_probe()
538 struct meson_ee_pwrc_domain *dom = &pwrc->domains[i]; in meson_ee_pwrc_shutdown() local
540 if (dom->desc.get_power && !dom->desc.get_power(dom)) in meson_ee_pwrc_shutdown()
541 meson_ee_pwrc_off(&dom->base); in meson_ee_pwrc_shutdown()