/src/sys/external/bsd/drm2/dist/drm/amd/amdkfd/ |
kfd_interrupt.c | 26 * KFD Interrupts. 57 int kfd_interrupt_init(struct kfd_dev *kfd) 61 r = kfifo_alloc(&kfd->ih_fifo, 62 KFD_IH_NUM_ENTRIES * kfd->device_info->ih_ring_entry_size, 69 kfd->ih_wq = alloc_workqueue("KFD IH", WQ_HIGHPRI, 1); 70 if (unlikely(!kfd->ih_wq)) { 71 kfifo_free(&kfd->ih_fifo); 72 dev_err(kfd_chardev(), "Failed to allocate KFD IH workqueue\n"); 75 spin_lock_init(&kfd->interrupt_lock) [all...] |
kfd_iommu.h | 32 int kfd_iommu_check_device(struct kfd_dev *kfd); 33 int kfd_iommu_device_init(struct kfd_dev *kfd); 38 void kfd_iommu_suspend(struct kfd_dev *kfd); 39 int kfd_iommu_resume(struct kfd_dev *kfd); 45 static inline int kfd_iommu_check_device(struct kfd_dev *kfd) 49 static inline int kfd_iommu_device_init(struct kfd_dev *kfd) 64 static inline void kfd_iommu_suspend(struct kfd_dev *kfd) 68 static inline int kfd_iommu_resume(struct kfd_dev *kfd)
|
kfd_device.c | 41 * kfd_locked is used to lock the kfd driver during suspend or reset 42 * once locked, kfd driver will stop any further GPU execution. 490 static int kfd_gtt_sa_init(struct kfd_dev *kfd, unsigned int buf_size, 492 static void kfd_gtt_sa_fini(struct kfd_dev *kfd); 494 static int kfd_resume(struct kfd_dev *kfd); 499 struct kfd_dev *kfd; local in function:kgd2kfd_probe 513 dev_err(kfd_device, "%s %s not supported in kfd\n", 518 kfd = kzalloc(sizeof(*kfd), GFP_KERNEL); 519 if (!kfd) [all...] |
kfd_doorbell.c | 50 * Although the mapping is done by KFD, it is equivalent to an mmap of 51 * the /dev/kfd with the particular device encoded in the mmap offset. 52 * There will be other uses for mmap of /dev/kfd, so only a range of 57 size_t kfd_doorbell_process_slice(struct kfd_dev *kfd) 59 return roundup(kfd->device_info->doorbell_size * 65 int kfd_doorbell_init(struct kfd_dev *kfd) 78 roundup(kfd->shared_resources.doorbell_start_offset, 79 kfd_doorbell_process_slice(kfd)); 82 rounddown(kfd->shared_resources.doorbell_aperture_size, 83 kfd_doorbell_process_slice(kfd)); [all...] |
kfd_iommu.c | 44 int kfd_iommu_check_device(struct kfd_dev *kfd) 49 if (!kfd->device_info->needs_iommu_device) 53 err = amd_iommu_device_info(kfd->pdev, &iommu_info); 65 int kfd_iommu_device_init(struct kfd_dev *kfd) 71 if (!kfd->device_info->needs_iommu_device) 75 err = amd_iommu_device_info(kfd->pdev, &iommu_info); 93 (unsigned int)(1 << kfd->device_info->max_pasid_bits), 219 static int kfd_bind_processes_to_device(struct kfd_dev *kfd) 230 pdd = kfd_get_process_device_data(kfd, p); 237 err = amd_iommu_bind_pasid(kfd->pdev, p->pasid [all...] |
kfd_priv.h | 56 /* Use upper bits of mmap offset to store KFD driver specific information. 155 * Ignore CRAT table during KFD initialization, can be used to work around 237 * KFD. It is aligned for mapping 241 * doorbell BAR to the first KFD 276 * Interrupts of interest to KFD are copied 478 * @process: The kfd process that created this queue. 480 * @device: The kfd device that created this queue. 590 /* KFD Memory Eviction */ 784 /* KFD process API for creating and translating handles */ 809 size_t kfd_doorbell_process_slice(struct kfd_dev *kfd); [all...] |
kfd_mqd_manager.h | 55 * @dev: The kfd device structure coupled with this module. 65 * ASIC. Currently the kfd driver supports only Kaveri so there are instances 71 struct kfd_mem_obj* (*allocate_mqd)(struct kfd_dev *kfd,
|
kfd_mqd_manager_v9.c | 89 static struct kfd_mem_obj *allocate_mqd(struct kfd_dev *kfd, 99 if (kfd->cwsr_enabled && (q->type == KFD_QUEUE_TYPE_COMPUTE)) { 103 retval = amdgpu_amdkfd_alloc_gtt_mem(kfd->kgd, 110 retval = kfd_gtt_sa_allocate(kfd, sizeof(struct v9_mqd), 285 struct kfd_dev *kfd = mm->dev; local in function:free_mqd 288 amdgpu_amdkfd_free_gtt_mem(kfd->kgd, mqd_mem_obj->gtt_mem);
|
kfd_packet_manager_v9.c | 87 struct kfd_dev *kfd = pm->dqm->dev; local in function:pm_runlist_v9 92 * of processes in the runlist and kfd module parameter 99 kfd->max_proc_per_quantum);
|
kfd_packet_manager_vi.c | 84 struct kfd_dev *kfd = pm->dqm->dev; local in function:pm_runlist_vi 92 * of processes in the runlist and kfd module parameter 99 kfd->max_proc_per_quantum);
|
kfd_mqd_manager_cik.c | 80 static struct kfd_mem_obj *allocate_mqd(struct kfd_dev *kfd, 85 if (kfd_gtt_sa_allocate(kfd, sizeof(struct cik_mqd), 130 * In KFD we are using a fixed pipe priority set to CS_MEDIUM.
|
kfd_mqd_manager_v10.c | 80 static struct kfd_mem_obj *allocate_mqd(struct kfd_dev *kfd, 85 if (kfd_gtt_sa_allocate(kfd, sizeof(struct v10_compute_mqd),
|
kfd_mqd_manager_vi.c | 83 static struct kfd_mem_obj *allocate_mqd(struct kfd_dev *kfd, 88 if (kfd_gtt_sa_allocate(kfd, sizeof(struct vi_mqd),
|
kfd_chardev.c | 53 static const char kfd_dev_name[] = "kfd"; 124 "Process %d (32-bit) failed to open /dev/kfd\n" 1026 * handle is passed to KFD with the first call to this IOCTL 1030 struct kfd_dev *kfd; local in function:kfd_ioctl_create_event 1040 kfd = kfd_device_by_id(GET_GPU_ID(args->event_page_offset)); 1041 if (!kfd) { 1047 pdd = kfd_bind_process_to_device(kfd, p); 1063 err = amdgpu_amdkfd_gpuvm_map_gtt_bo_to_kernel(kfd->kgd, 1333 /* MMIO is mapped through kfd device 1334 * Generate a kfd mmap offse [all...] |
/src/usr.sbin/mdsetimage/ |
mdsetimage.c | 75 int ch, kfd, fsfd, rv; local in function:main 126 if ((kfd = open(kfile, O_RDONLY, 0)) == -1) 129 if ((kfd = open(kfile, O_RDWR, 0)) == -1) 133 if (fstat(kfd, &ksb) == -1) 139 MAP_FILE | MAP_PRIVATE, kfd, 0)) == (caddr_t)-1) 144 bin = bin_open(kfd, kfile, bfdname); 181 if (lseek(kfd, md_root_image_offset, SEEK_SET) != 192 rfd = kfd; 199 wfd = kfd; 226 if (lseek(kfd, md_root_size_offset, SEEK_SET) ! [all...] |
bin_nlist.c | 45 int kfd; member in struct:bininfo 74 bin_open(int kfd, const char *kfile, const char *bfdname) 82 bin->kfd = kfd; 122 if (__fdnlist(bin->kfd, nl) != 0)
|
/src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/ |
amdgpu_amdkfd.c | 73 adev->kfd.dev = kgd2kfd_probe((struct kgd_dev *)adev, 76 if (adev->kfd.dev) 118 if (adev->kfd.dev) { 167 kgd2kfd_device_init(adev->kfd.dev, adev->ddev, &gpu_resources); 173 if (adev->kfd.dev) { 174 kgd2kfd_device_exit(adev->kfd.dev); 175 adev->kfd.dev = NULL; 182 if (adev->kfd.dev) 183 kgd2kfd_interrupt(adev->kfd.dev, ih_ring_entry); 188 if (adev->kfd.dev [all...] |
amdgpu_amdkfd.h | 72 /* KFD Memory Eviction */ 103 /* List head of all VMs that belong to a KFD process */ 105 /* List head for all KFD BOs that belong to a KFD process. */ 250 bool kgd2kfd_device_init(struct kfd_dev *kfd, 253 void kgd2kfd_device_exit(struct kfd_dev *kfd); 254 void kgd2kfd_suspend(struct kfd_dev *kfd); 255 int kgd2kfd_resume(struct kfd_dev *kfd); 256 int kgd2kfd_pre_reset(struct kfd_dev *kfd); 257 int kgd2kfd_post_reset(struct kfd_dev *kfd); [all...] |
amdgpu_sdma.c | 167 kgd2kfd_set_sram_ecc_flag(adev->kfd.dev);
|
amdgpu_umc.c | 103 kgd2kfd_set_sram_ecc_flag(adev->kfd.dev);
|
amdgpu_amdkfd_gpuvm.c | 38 /* BO flag to indicate a KFD userptr BO */ 46 /* Impose limit on how much memory KFD can use */ 159 (adev->kfd.vram_used + vram_needed > 165 adev->kfd.vram_used += vram_needed; 191 adev->kfd.vram_used -= size; 192 WARN_ONCE(adev->kfd.vram_used < 0, 193 "kfd VRAM memory accounting unbalanced"); 197 "kfd system memory accounting unbalanced"); 199 "kfd TTM memory accounting unbalanced"); 581 struct amdgpu_bo_list_entry kfd_bo; /* BO list entry for the KFD BO * [all...] |
amdgpu_gfx.c | 641 kgd2kfd_set_sram_ecc_flag(adev->kfd.dev);
|
amdgpu.h | 927 /* KFD */ 928 struct amdgpu_kfd_dev kfd; member in struct:amdgpu_device
|
/src/usr.bin/config/ |
main.c | 1824 int found, kfd; local in function:extract_config 1831 kfd = open(conffile, O_RDONLY); 1832 if (kfd == -1) 1834 if (fstat(kfd, &st) == -1) 1837 kfd, 0); 1871 (void)close(kfd);
|