Lines Matching refs:pdd
158 struct kfd_process_device *pdd, *temp; in kfd_process_wq_release() local
170 list_for_each_entry_safe(pdd, temp, &p->per_device_data, in kfd_process_wq_release()
173 pdd->dev->id, p->pasid); in kfd_process_wq_release()
175 amd_iommu_unbind_pasid(pdd->dev->pdev, p->pasid); in kfd_process_wq_release()
176 list_del(&pdd->per_device_list); in kfd_process_wq_release()
178 kfree(pdd); in kfd_process_wq_release()
322 struct kfd_process_device *pdd = NULL; in kfd_get_process_device_data() local
324 list_for_each_entry(pdd, &p->per_device_data, per_device_list) in kfd_get_process_device_data()
325 if (pdd->dev == dev) in kfd_get_process_device_data()
328 return pdd; in kfd_get_process_device_data()
334 struct kfd_process_device *pdd = NULL; in kfd_create_process_device_data() local
336 pdd = kzalloc(sizeof(*pdd), GFP_KERNEL); in kfd_create_process_device_data()
337 if (pdd != NULL) { in kfd_create_process_device_data()
338 pdd->dev = dev; in kfd_create_process_device_data()
339 INIT_LIST_HEAD(&pdd->qpd.queues_list); in kfd_create_process_device_data()
340 INIT_LIST_HEAD(&pdd->qpd.priv_queue_list); in kfd_create_process_device_data()
341 pdd->qpd.dqm = dev->dqm; in kfd_create_process_device_data()
342 list_add(&pdd->per_device_list, &p->per_device_data); in kfd_create_process_device_data()
345 return pdd; in kfd_create_process_device_data()
358 struct kfd_process_device *pdd; in kfd_bind_process_to_device() local
361 pdd = kfd_get_process_device_data(dev, p); in kfd_bind_process_to_device()
362 if (!pdd) { in kfd_bind_process_to_device()
367 if (pdd->bound) in kfd_bind_process_to_device()
368 return pdd; in kfd_bind_process_to_device()
374 pdd->bound = true; in kfd_bind_process_to_device()
376 return pdd; in kfd_bind_process_to_device()
382 struct kfd_process_device *pdd; in kfd_unbind_process_from_device() local
401 pdd = kfd_get_process_device_data(dev, p); in kfd_unbind_process_from_device()
409 if (pdd) in kfd_unbind_process_from_device()
410 pdd->bound = false; in kfd_unbind_process_from_device()
423 struct kfd_process_device *pdd) in kfd_get_next_process_device_data() argument
425 if (list_is_last(&pdd->per_device_list, &p->per_device_data)) in kfd_get_next_process_device_data()
427 return list_next_entry(pdd, per_device_list); in kfd_get_next_process_device_data()