Lines Matching refs:pdd

109 int kfd_iommu_bind_process_to_device(struct kfd_process_device *pdd)  in kfd_iommu_bind_process_to_device()  argument
111 struct kfd_dev *dev = pdd->dev; in kfd_iommu_bind_process_to_device()
112 struct kfd_process *p = pdd->process; in kfd_iommu_bind_process_to_device()
115 if (!dev->device_info->needs_iommu_device || pdd->bound == PDD_BOUND) in kfd_iommu_bind_process_to_device()
118 if (unlikely(pdd->bound == PDD_BOUND_SUSPENDED)) { in kfd_iommu_bind_process_to_device()
125 pdd->bound = PDD_BOUND; in kfd_iommu_bind_process_to_device()
137 struct kfd_process_device *pdd; in kfd_iommu_unbind_process() local
139 list_for_each_entry(pdd, &p->per_device_data, per_device_list) in kfd_iommu_unbind_process()
140 if (pdd->bound == PDD_BOUND) in kfd_iommu_unbind_process()
141 amd_iommu_unbind_pasid(pdd->dev->pdev, p->pasid); in kfd_iommu_unbind_process()
149 struct kfd_process_device *pdd; in iommu_pasid_shutdown_callback() local
178 pdd = kfd_get_process_device_data(dev, p); in iommu_pasid_shutdown_callback()
179 if (pdd) in iommu_pasid_shutdown_callback()
183 kfd_process_dequeue_from_device(pdd); in iommu_pasid_shutdown_callback()
219 struct kfd_process_device *pdd; in kfd_bind_processes_to_device() local
228 pdd = kfd_get_process_device_data(kfd, p); in kfd_bind_processes_to_device()
230 if (WARN_ON(!pdd) || pdd->bound != PDD_BOUND_SUSPENDED) { in kfd_bind_processes_to_device()
244 pdd->bound = PDD_BOUND; in kfd_bind_processes_to_device()
260 struct kfd_process_device *pdd; in kfd_unbind_processes_from_device() local
268 pdd = kfd_get_process_device_data(kfd, p); in kfd_unbind_processes_from_device()
270 if (WARN_ON(!pdd)) { in kfd_unbind_processes_from_device()
275 if (pdd->bound == PDD_BOUND) in kfd_unbind_processes_from_device()
276 pdd->bound = PDD_BOUND_SUSPENDED; in kfd_unbind_processes_from_device()