Lines Matching full:pds
195 struct dev_pm_domain_list *pds; in dev_pm_domain_attach_list() local
222 pds = kzalloc(sizeof(*pds), GFP_KERNEL); in dev_pm_domain_attach_list()
223 if (!pds) in dev_pm_domain_attach_list()
226 size = sizeof(*pds->pd_devs) + sizeof(*pds->pd_links) + in dev_pm_domain_attach_list()
227 sizeof(*pds->opp_tokens); in dev_pm_domain_attach_list()
228 pds->pd_devs = kcalloc(num_pds, size, GFP_KERNEL); in dev_pm_domain_attach_list()
229 if (!pds->pd_devs) { in dev_pm_domain_attach_list()
233 pds->pd_links = (void *)(pds->pd_devs + num_pds); in dev_pm_domain_attach_list()
234 pds->opp_tokens = (void *)(pds->pd_links + num_pds); in dev_pm_domain_attach_list()
260 pds->opp_tokens[i] = ret; in dev_pm_domain_attach_list()
272 pds->pd_links[i] = link; in dev_pm_domain_attach_list()
275 pds->pd_devs[i] = pd_dev; in dev_pm_domain_attach_list()
278 pds->num_pds = num_pds; in dev_pm_domain_attach_list()
279 *list = pds; in dev_pm_domain_attach_list()
283 dev_pm_opp_clear_config(pds->opp_tokens[i]); in dev_pm_domain_attach_list()
287 dev_pm_opp_clear_config(pds->opp_tokens[i]); in dev_pm_domain_attach_list()
288 if (pds->pd_links[i]) in dev_pm_domain_attach_list()
289 device_link_del(pds->pd_links[i]); in dev_pm_domain_attach_list()
290 dev_pm_domain_detach(pds->pd_devs[i], true); in dev_pm_domain_attach_list()
292 kfree(pds->pd_devs); in dev_pm_domain_attach_list()
294 kfree(pds); in dev_pm_domain_attach_list()