| /linux/drivers/gpu/drm/amd/amdkfd/ |
| H A D | kfd_device_queue_manager.c | 147 struct qcm_process_device *qpd) in program_sh_mem_settings() argument 154 dqm->dev->adev, qpd->vmid, qpd->sh_mem_config, in program_sh_mem_settings() 155 qpd->sh_mem_ape1_base, qpd->sh_mem_ape1_limit, in program_sh_mem_settings() 156 qpd->sh_mem_bases, xcc_id); in program_sh_mem_settings() 162 struct qcm_process_device *qpd; in kfd_hws_hang() local 167 qpd = cur->qpd; in kfd_hws_hang() 168 list_for_each_entry(q, &qpd->queues_list, list) { in kfd_hws_hang() 169 struct kfd_process_device *pdd = qpd_to_pdd(qpd); in kfd_hws_hang() 202 struct qcm_process_device *qpd) in add_queue_mes() argument 205 struct kfd_process_device *pdd = qpd_to_pdd(qpd); in add_queue_mes() [all …]
|
| H A D | kfd_doorbell.c | 208 static int init_doorbell_bitmap(struct qcm_process_device *qpd, in init_doorbell_bitmap() argument 226 __set_bit(i, qpd->doorbell_bitmap); in init_doorbell_bitmap() 228 qpd->doorbell_bitmap); in init_doorbell_bitmap() 240 if (!pdd->qpd.proc_doorbells) { in kfd_get_process_doorbells() 247 pdd->qpd.proc_doorbells, in kfd_get_process_doorbells() 256 struct qcm_process_device *qpd = &pdd->qpd; in kfd_alloc_process_doorbells() local 259 qpd->doorbell_bitmap = bitmap_zalloc(KFD_MAX_NUM_OF_QUEUES_PER_PROCESS, in kfd_alloc_process_doorbells() 261 if (!qpd->doorbell_bitmap) { in kfd_alloc_process_doorbells() 266 r = init_doorbell_bitmap(&pdd->qpd, kfd); in kfd_alloc_process_doorbells() 278 &qpd->proc_doorbells, in kfd_alloc_process_doorbells() [all …]
|
| H A D | kfd_process.c | 106 struct qcm_process_device *qpd; in kfd_sdma_activity_worker() local 119 qpd = &pdd->qpd; in kfd_sdma_activity_worker() 120 if (!dqm || !qpd) in kfd_sdma_activity_worker() 151 list_for_each_entry(q, &qpd->queues_list, list) { in kfd_sdma_activity_worker() 213 list_for_each_entry(q, &qpd->queues_list, list) { in kfd_sdma_activity_worker() 284 if (pdd->qpd.queue_count == 0) { in kfd_get_cu_occupancy() 310 kfd_dqm_is_queue_in_process(dev->dqm, &pdd->qpd, in kfd_get_cu_occupancy() 793 struct qcm_process_device *qpd = &pdd->qpd; in kfd_process_device_reserve_ib_mem() local 802 if (qpd->ib_kaddr || !qpd->ib_base) in kfd_process_device_reserve_ib_mem() 806 ret = kfd_process_alloc_gpuvm(pdd, qpd->ib_base, PAGE_SIZE, flags, in kfd_process_device_reserve_ib_mem() [all …]
|
| H A D | kfd_process_queue_manager.c | 93 dev->dqm->ops.process_termination(dev->dqm, &pdd->qpd); in kfd_process_dequeue_from_device() 132 if (gws && pdd->qpd.num_gws) in pqm_set_gws() 135 if (!gws && pdd->qpd.num_gws == 0) in pqm_set_gws() 161 pdd->qpd.num_gws = gws ? dev->adev->gds.gws_size : 0; in pqm_set_gws() 209 pdd->qpd.num_gws = 0; in pqm_clean_queue_resource() 350 if (pdd->qpd.is_debug) in pqm_create_queue() 353 if (pdd->qpd.queue_count >= max_queues) in pqm_create_queue() 366 if (list_empty(&pdd->qpd.queues_list) && in pqm_create_queue() 367 list_empty(&pdd->qpd.priv_queue_list)) in pqm_create_queue() 368 dev->dqm->ops.register_process(dev->dqm, &pdd->qpd); in pqm_create_queue() [all...] |
| H A D | kfd_debug.c | 632 kfd_process_set_trap_debug_flag(&pdd->qpd, false); in kfd_dbg_trap_deactivate() 645 release_debug_trap_vmid(pdd->dev->dqm, &pdd->qpd)) in kfd_dbg_trap_deactivate() 725 r = reserve_debug_trap_vmid(pdd->dev->dqm, &pdd->qpd); in kfd_dbg_trap_activate() 764 kfd_process_set_trap_debug_flag(&pdd->qpd, true); in kfd_dbg_trap_activate() 805 if (pdd->qpd.num_gws && (!kfd_dbg_has_gws_support(pdd->dev) || in kfd_dbg_trap_enable() 971 struct qcm_process_device *qpd = &pdd->qpd; in kfd_dbg_trap_query_exception_info() local 973 list_for_each_entry(queue, &qpd->queues_list, list) { in kfd_dbg_trap_query_exception_info()
|
| H A D | kfd_priv.h | 763 struct qcm_process_device qpd; member 870 #define qpd_to_pdd(x) container_of(x, struct kfd_process_device, qpd) 1215 void kfd_process_set_trap_handler(struct qcm_process_device *qpd, 1218 void kfd_process_set_trap_debug_flag(struct qcm_process_device *qpd, 1456 struct qcm_process_device *qpd);
|
| H A D | kfd_chardev.c | 367 if (!pdd->qpd.proc_doorbells) { in kfd_ioctl_create_queue() 611 &pdd->qpd, in kfd_ioctl_set_memory_policy() 647 kfd_process_set_trap_handler(&pdd->qpd, args->tba_addr, args->tma_addr); in kfd_ioctl_set_trap_handler() 922 pdd->qpd.sh_hidden_private_base = args->va_addr; in kfd_ioctl_set_scratch_backing_va() 927 pdd->qpd.vmid != 0 && dev->kfd2kgd->set_scratch_backing_va) in kfd_ioctl_set_scratch_backing_va() 929 dev->adev, args->va_addr, pdd->qpd.vmid); in kfd_ioctl_set_scratch_backing_va() 2301 if (!pdd->qpd.proc_doorbells) { in criu_restore_devices() 2797 if (pdd->qpd.queue_count) in runtime_enable()
|
| /linux/drivers/infiniband/hw/cxgb4/ |
| H A D | device.c | 246 struct c4iw_debugfs_data *qpd) in dump_qp() argument 253 space = qpd->bufsize - qpd->pos - 1; in dump_qp() 267 cc = snprintf(qpd->buf + qpd->pos, space, in dump_qp() 288 cc = snprintf(qpd->buf + qpd->pos, space, in dump_qp() 304 cc = snprintf(qpd->buf + qpd->pos, space, in dump_qp() 310 qpd->pos += cc; in dump_qp() 316 struct c4iw_debugfs_data *qpd = file->private_data; in qp_release() local 317 if (!qpd) { in qp_release() 321 vfree(qpd->buf); in qp_release() 322 kfree(qpd); in qp_release() [all …]
|