|
Lines 193-221
no_clk:
Link Here
|
| 193 |
|
193 |
|
| 194 |
/* Assign the child power domains to their parents */ |
194 |
/* Assign the child power domains to their parents */ |
| 195 |
for_each_compatible_node(np, NULL, "samsung,exynos4210-pd") { |
195 |
for_each_compatible_node(np, NULL, "samsung,exynos4210-pd") { |
| 196 |
struct generic_pm_domain *child_domain, *parent_domain; |
196 |
struct of_phandle_args child, parent; |
| 197 |
struct of_phandle_args args; |
|
|
| 198 |
|
197 |
|
| 199 |
args.np = np; |
198 |
child.np = np; |
| 200 |
args.args_count = 0; |
199 |
child.args_count = 0; |
| 201 |
child_domain = of_genpd_get_from_provider(&args); |
|
|
| 202 |
if (IS_ERR(child_domain)) |
| 203 |
continue; |
| 204 |
|
200 |
|
| 205 |
if (of_parse_phandle_with_args(np, "power-domains", |
201 |
if (of_parse_phandle_with_args(np, "power-domains", |
| 206 |
"#power-domain-cells", 0, &args) != 0) |
202 |
"#power-domain-cells", 0, |
| 207 |
continue; |
203 |
&parent) != 0) |
| 208 |
|
|
|
| 209 |
parent_domain = of_genpd_get_from_provider(&args); |
| 210 |
if (IS_ERR(parent_domain)) |
| 211 |
continue; |
204 |
continue; |
| 212 |
|
205 |
|
| 213 |
if (pm_genpd_add_subdomain(parent_domain, child_domain)) |
206 |
if (of_genpd_add_subdomain(&parent, &child)) |
| 214 |
pr_warn("%s failed to add subdomain: %s\n", |
207 |
pr_warn("%s failed to add subdomain: %s\n", |
| 215 |
parent_domain->name, child_domain->name); |
208 |
parent.np->name, child.np->name); |
| 216 |
else |
209 |
else |
| 217 |
pr_info("%s has as child subdomain: %s.\n", |
210 |
pr_info("%s has as child subdomain: %s.\n", |
| 218 |
parent_domain->name, child_domain->name); |
211 |
parent.np->name, child.np->name); |
| 219 |
} |
212 |
} |
| 220 |
|
213 |
|
| 221 |
return 0; |
214 |
return 0; |
| 222 |
- |
|
|