/linux-4.4.14/drivers/gpu/drm/amd/amdkfd/ |
D | kfd_device.c | 91 static int kfd_gtt_sa_init(struct kfd_dev *kfd, unsigned int buf_size, 93 static void kfd_gtt_sa_fini(struct kfd_dev *kfd); 112 struct kfd_dev *kfd; in kgd2kfd_probe() local 120 kfd = kzalloc(sizeof(*kfd), GFP_KERNEL); in kgd2kfd_probe() 121 if (!kfd) in kgd2kfd_probe() 124 kfd->kgd = kgd; in kgd2kfd_probe() 125 kfd->device_info = device_info; in kgd2kfd_probe() 126 kfd->pdev = pdev; in kgd2kfd_probe() 127 kfd->init_complete = false; in kgd2kfd_probe() 128 kfd->kfd2kgd = f2g; in kgd2kfd_probe() [all …]
|
D | kfd_interrupt.c | 51 int kfd_interrupt_init(struct kfd_dev *kfd) in kfd_interrupt_init() argument 54 kfd->device_info->ih_ring_entry_size, in kfd_interrupt_init() 59 kfd->interrupt_ring = interrupt_ring; in kfd_interrupt_init() 60 kfd->interrupt_ring_size = in kfd_interrupt_init() 61 KFD_INTERRUPT_RING_SIZE * kfd->device_info->ih_ring_entry_size; in kfd_interrupt_init() 62 atomic_set(&kfd->interrupt_ring_wptr, 0); in kfd_interrupt_init() 63 atomic_set(&kfd->interrupt_ring_rptr, 0); in kfd_interrupt_init() 65 spin_lock_init(&kfd->interrupt_lock); in kfd_interrupt_init() 67 INIT_WORK(&kfd->interrupt_work, interrupt_wq); in kfd_interrupt_init() 69 kfd->interrupts_active = true; in kfd_interrupt_init() [all …]
|
D | kfd_doorbell.c | 62 void kfd_doorbell_init(struct kfd_dev *kfd) in kfd_doorbell_init() argument 75 roundup(kfd->shared_resources.doorbell_start_offset, in kfd_doorbell_init() 79 rounddown(kfd->shared_resources.doorbell_aperture_size, in kfd_doorbell_init() 89 kfd->doorbell_base = kfd->shared_resources.doorbell_physical_address + in kfd_doorbell_init() 92 kfd->doorbell_id_offset = doorbell_start_offset / sizeof(u32); in kfd_doorbell_init() 93 kfd->doorbell_process_limit = doorbell_process_limit - 1; in kfd_doorbell_init() 95 kfd->doorbell_kernel_ptr = ioremap(kfd->doorbell_base, in kfd_doorbell_init() 98 BUG_ON(!kfd->doorbell_kernel_ptr); in kfd_doorbell_init() 102 (uintptr_t)kfd->doorbell_base); in kfd_doorbell_init() 105 kfd->doorbell_id_offset); in kfd_doorbell_init() [all …]
|
D | kfd_priv.h | 208 bool kgd2kfd_device_init(struct kfd_dev *kfd, 210 void kgd2kfd_device_exit(struct kfd_dev *kfd); 576 void kfd_doorbell_init(struct kfd_dev *kfd); 578 u32 __iomem *kfd_get_kernel_doorbell(struct kfd_dev *kfd, 580 void kfd_release_kernel_doorbell(struct kfd_dev *kfd, u32 __iomem *db_addr); 583 unsigned int kfd_queue_id_to_doorbell(struct kfd_dev *kfd, 589 int kfd_gtt_sa_allocate(struct kfd_dev *kfd, unsigned int size, 592 int kfd_gtt_sa_free(struct kfd_dev *kfd, struct kfd_mem_obj *mem_obj); 608 void kgd2kfd_interrupt(struct kfd_dev *kfd, const void *ih_ring_entry); 609 bool enqueue_ih_ring_entry(struct kfd_dev *kfd, const void *ih_ring_entry); [all …]
|
/linux-4.4.14/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_amdkfd.c | 107 rdev->kfd = kgd2kfd->probe((struct kgd_dev *)rdev, in amdgpu_amdkfd_device_probe() 113 if (rdev->kfd) { in amdgpu_amdkfd_device_init() 126 kgd2kfd->device_init(rdev->kfd, &gpu_resources); in amdgpu_amdkfd_device_init() 132 if (rdev->kfd) { in amdgpu_amdkfd_device_fini() 133 kgd2kfd->device_exit(rdev->kfd); in amdgpu_amdkfd_device_fini() 134 rdev->kfd = NULL; in amdgpu_amdkfd_device_fini() 141 if (rdev->kfd) in amdgpu_amdkfd_interrupt() 142 kgd2kfd->interrupt(rdev->kfd, ih_ring_entry); in amdgpu_amdkfd_interrupt() 147 if (rdev->kfd) in amdgpu_amdkfd_suspend() 148 kgd2kfd->suspend(rdev->kfd); in amdgpu_amdkfd_suspend() [all …]
|
D | amdgpu.h | 2100 struct kfd_dev *kfd; member
|
/linux-4.4.14/drivers/gpu/drm/amd/include/ |
D | kgd_kfd_interface.h | 216 bool (*device_init)(struct kfd_dev *kfd, 218 void (*device_exit)(struct kfd_dev *kfd); 219 void (*interrupt)(struct kfd_dev *kfd, const void *ih_ring_entry); 220 void (*suspend)(struct kfd_dev *kfd); 221 int (*resume)(struct kfd_dev *kfd);
|
/linux-4.4.14/tools/perf/util/ |
D | probe-file.c | 117 int probe_file__open_both(int *kfd, int *ufd, int flag) in probe_file__open_both() argument 119 if (!kfd || !ufd) in probe_file__open_both() 122 *kfd = open_kprobe_events(flag & PF_FL_RW); in probe_file__open_both() 124 if (*kfd < 0 && *ufd < 0) { in probe_file__open_both() 125 print_both_open_warning(*kfd, *ufd); in probe_file__open_both() 126 return *kfd; in probe_file__open_both()
|
D | probe-file.h | 12 int probe_file__open_both(int *kfd, int *ufd, int flag);
|
D | probe-event.c | 2840 int ret, ret2, ufd = -1, kfd = -1; in del_perf_probe_events() local 2847 ret = probe_file__open_both(&kfd, &ufd, PF_FL_RW); in del_perf_probe_events() 2851 ret = probe_file__del_events(kfd, filter); in del_perf_probe_events() 2863 if (kfd >= 0) in del_perf_probe_events() 2864 close(kfd); in del_perf_probe_events()
|
/linux-4.4.14/drivers/gpu/drm/radeon/ |
D | radeon_kfd.c | 177 rdev->kfd = kgd2kfd->probe((struct kgd_dev *)rdev, in radeon_kfd_device_probe() 183 if (rdev->kfd) { in radeon_kfd_device_init() 196 kgd2kfd->device_init(rdev->kfd, &gpu_resources); in radeon_kfd_device_init() 202 if (rdev->kfd) { in radeon_kfd_device_fini() 203 kgd2kfd->device_exit(rdev->kfd); in radeon_kfd_device_fini() 204 rdev->kfd = NULL; in radeon_kfd_device_fini() 210 if (rdev->kfd) in radeon_kfd_interrupt() 211 kgd2kfd->interrupt(rdev->kfd, ih_ring_entry); in radeon_kfd_interrupt() 216 if (rdev->kfd) in radeon_kfd_suspend() 217 kgd2kfd->suspend(rdev->kfd); in radeon_kfd_suspend() [all …]
|
D | radeon.h | 2462 struct kfd_dev *kfd; member
|
/linux-4.4.14/tools/perf/ |
D | builtin-probe.c | 365 int ret, ret2, ufd = -1, kfd = -1; in perf_del_probe_events() local 376 ret = probe_file__open_both(&kfd, &ufd, PF_FL_RW); in perf_del_probe_events() 387 ret = probe_file__get_events(kfd, filter, klist); in perf_del_probe_events() 392 ret = probe_file__del_strlist(kfd, klist); in perf_del_probe_events() 413 if (kfd >= 0) in perf_del_probe_events() 414 close(kfd); in perf_del_probe_events()
|