Lines Matching refs:kfd_dev
211 bool (*interrupt_isr)(struct kfd_dev *dev,
214 void (*interrupt_wq)(struct kfd_dev *dev,
236 unsigned int kfd_get_num_sdma_engines(struct kfd_dev *kdev);
237 unsigned int kfd_get_num_xgmi_sdma_engines(struct kfd_dev *kdev);
253 struct kfd_dev { struct
565 struct kfd_dev *device;
699 struct kfd_dev *dev;
927 bool kfd_dev_is_large_bar(struct kfd_dev *dev);
962 struct kfd_process_device *kfd_bind_process_to_device(struct kfd_dev *dev,
964 struct kfd_process_device *kfd_get_process_device_data(struct kfd_dev *dev,
966 struct kfd_process_device *kfd_create_process_device_data(struct kfd_dev *dev,
971 int kfd_reserved_mem_mmap(struct kfd_dev *dev, struct kfd_process *process,
992 size_t kfd_doorbell_process_slice(struct kfd_dev *kfd);
993 int kfd_doorbell_init(struct kfd_dev *kfd);
994 void kfd_doorbell_fini(struct kfd_dev *kfd);
995 int kfd_doorbell_mmap(struct kfd_dev *dev, struct kfd_process *process,
997 void __iomem *kfd_get_kernel_doorbell(struct kfd_dev *kfd,
999 void kfd_release_kernel_doorbell(struct kfd_dev *kfd, u32 __iomem *db_addr);
1003 unsigned int kfd_get_doorbell_dw_offset_in_bar(struct kfd_dev *kfd,
1007 int kfd_alloc_process_doorbells(struct kfd_dev *kfd,
1009 void kfd_free_process_doorbells(struct kfd_dev *kfd,
1013 int kfd_gtt_sa_allocate(struct kfd_dev *kfd, unsigned int size,
1016 int kfd_gtt_sa_free(struct kfd_dev *kfd, struct kfd_mem_obj *mem_obj);
1029 int kfd_topology_add_device(struct kfd_dev *gpu);
1030 int kfd_topology_remove_device(struct kfd_dev *gpu);
1036 struct kfd_dev *kfd_device_by_id(uint32_t gpu_id);
1037 struct kfd_dev *kfd_device_by_pci_dev(const struct pci_dev *pdev);
1038 struct kfd_dev *kfd_device_by_adev(const struct amdgpu_device *adev);
1039 int kfd_topology_enum_kfd_devices(uint8_t idx, struct kfd_dev **kdev);
1041 void kfd_double_confirm_iommu_support(struct kfd_dev *gpu);
1044 int kfd_interrupt_init(struct kfd_dev *dev);
1045 void kfd_interrupt_exit(struct kfd_dev *dev);
1046 bool enqueue_ih_ring_entry(struct kfd_dev *kfd, const void *ih_ring_entry);
1047 bool interrupt_is_wanted(struct kfd_dev *dev,
1175 struct kfd_dev *dev);
1177 struct kfd_dev *dev);
1179 struct kfd_dev *dev);
1181 struct kfd_dev *dev);
1183 struct kfd_dev *dev);
1185 struct kfd_dev *dev);
1187 struct kfd_dev *dev);
1188 struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev);
1190 struct kernel_queue *kernel_queue_init(struct kfd_dev *dev,
1207 struct kfd_dev *dev,
1306 uint64_t kfd_get_number_elems(struct kfd_dev *kfd);
1324 void kfd_signal_iommu_event(struct kfd_dev *dev,
1340 void kfd_signal_vm_fault_event(struct kfd_dev *dev, u32 pasid,
1343 void kfd_signal_reset_event(struct kfd_dev *dev);
1345 void kfd_signal_poison_consumed_event(struct kfd_dev *dev, u32 pasid);
1349 static inline bool kfd_flush_tlb_after_unmap(struct kfd_dev *dev) in kfd_flush_tlb_after_unmap()
1360 void kfd_inc_compute_active(struct kfd_dev *dev);
1361 void kfd_dec_compute_active(struct kfd_dev *dev);
1365 static inline int kfd_devcgroup_check_permission(struct kfd_dev *kfd) in kfd_devcgroup_check_permission()
1390 int kfd_debugfs_hang_hws(struct kfd_dev *dev);