/openbmc/linux/drivers/gpu/drm/amd/amdkfd/ |
H A D | kfd_process_queue_manager.c | 34 struct process_queue_manager *pqm, unsigned int qid) in get_queue_by_qid() argument 38 list_for_each_entry(pqn, &pqm->queues, process_queue_list) { in get_queue_by_qid() 47 static int assign_queue_slot_by_qid(struct process_queue_manager *pqm, in assign_queue_slot_by_qid() argument 53 if (__test_and_set_bit(qid, pqm->queue_slot_bitmap)) { in assign_queue_slot_by_qid() 61 static int find_available_queue_slot(struct process_queue_manager *pqm, in find_available_queue_slot() argument 66 found = find_first_zero_bit(pqm->queue_slot_bitmap, in find_available_queue_slot() 73 pqm->process->pasid); in find_available_queue_slot() 77 set_bit(found, pqm->queue_slot_bitmap); in find_available_queue_slot() 103 int pqm_set_gws(struct process_queue_manager *pqm, unsigned int qid, in pqm_set_gws() argument 112 pqn = get_queue_by_qid(pqm, qid); in pqm_set_gws() [all …]
|
H A D | kfd_debug.c | 37 struct process_queue_manager *pqm; in kfd_dbg_ev_query_debug_event() local 50 pqm = &process->pqm; in kfd_dbg_ev_query_debug_event() 51 list_for_each_entry(pqn, &pqm->queues, process_queue_list) { in kfd_dbg_ev_query_debug_event() 118 struct process_queue_manager *pqm; in kfd_dbg_ev_raise() local 160 pqm = &process->pqm; in kfd_dbg_ev_raise() 161 list_for_each_entry(pqn, &pqm->queues, in kfd_dbg_ev_raise() 215 struct process_queue_manager *pqm; in kfd_set_dbg_ev_from_interrupt() local 222 pqm = &p->pqm; in kfd_set_dbg_ev_from_interrupt() 223 list_for_each_entry(pqn, &pqm->queues, in kfd_set_dbg_ev_from_interrupt() 324 struct process_queue_manager *pqm = &target->pqm; in kfd_dbg_set_workaround() local [all …]
|
H A D | kfd_priv.h | 642 struct process_queue_manager *pqm; member 899 struct process_queue_manager pqm; member 1312 int pqm_init(struct process_queue_manager *pqm, struct kfd_process *p); 1313 void pqm_uninit(struct process_queue_manager *pqm); 1314 int pqm_create_queue(struct process_queue_manager *pqm, 1324 int pqm_destroy_queue(struct process_queue_manager *pqm, unsigned int qid); 1325 int pqm_update_queue_properties(struct process_queue_manager *pqm, unsigned int qid, 1327 int pqm_update_mqd(struct process_queue_manager *pqm, unsigned int qid, 1329 int pqm_set_gws(struct process_queue_manager *pqm, unsigned int qid, 1331 struct kernel_queue *pqm_get_kernel_queue(struct process_queue_manager *pqm, [all …]
|
H A D | kfd_device_queue_manager_cik.c | 129 qpd->pqm->process->is_32bit_user_mode, temp, qpd->sh_mem_bases); in update_qpd_cik()
|
H A D | kfd_process.c | 1124 pqm_uninit(&p->pqm); in kfd_process_wq_release() 1497 err = pqm_init(&process->pqm, process); in create_process() 1548 pqm_uninit(&process->pqm); in create_process() 1587 pdd->qpd.pqm = &p->pqm; in kfd_create_process_device_data() 2167 q = pqm_get_user_queue(&p->pqm, workarea->queue_id); in send_exception_work_handler() 2252 r = pqm_debugfs_mqds(m, &p->pqm); in kfd_debugfs_mqds_by_process()
|
H A D | kfd_packet_manager_v9.c | 47 packet->bitfields2.pasid = qpd->pqm->process->pasid; in pm_map_process_v9() 102 packet->bitfields2.pasid = qpd->pqm->process->pasid; in pm_map_process_aldebaran()
|
H A D | kfd_chardev.c | 385 err = pqm_create_queue(&p->pqm, dev, filep, &q_properties, &queue_id, wptr_bo, in kfd_ioctl_create_queue() 440 retval = pqm_destroy_queue(&p->pqm, args->queue_id); in kfd_ioctl_destroy_queue() 492 retval = pqm_update_queue_properties(&p->pqm, args->queue_id, &properties); in kfd_ioctl_update_queue() 544 retval = pqm_update_mqd(&p->pqm, args->queue_id, &minfo); in kfd_ioctl_set_cu_mask() 561 r = pqm_get_wave_state(&p->pqm, args->queue_id, in kfd_ioctl_get_queue_wave_state() 1475 q = pqm_get_user_queue(&p->pqm, args->queue_id); in kfd_ioctl_alloc_queue_gws() 1500 retval = pqm_set_gws(&p->pqm, args->queue_id, args->num_gws ? dev->gws : NULL); in kfd_ioctl_alloc_queue_gws() 1700 if (!list_empty(&p->pqm.queues)) { in kfd_ioctl_set_xnack_mode() 3074 r = pqm_get_queue_snapshot(&target->pqm, in kfd_ioctl_set_debug_trap()
|
H A D | kfd_packet_manager_vi.c | 55 packet->bitfields2.pasid = qpd->pqm->process->pasid; in pm_map_process_vi()
|
H A D | kfd_device_queue_manager.c | 216 queue_input.process_id = qpd->pqm->process->pasid; in add_queue_mes() 245 queue_input.skip_process_ctx_clear = qpd->pqm->process->debug_trap_enabled || in add_queue_mes() 821 qpd->pqm->process); in destroy_queue_nocpsch_locked() 1841 q->properties.is_dbg_wa = qpd->pqm->process->debug_trap_enabled && in create_queue_cpsch() 2152 qpd->pqm->process, q->device, in destroy_queue_cpsch() 2425 dbgdev_wave_reset_wavefronts(dqm->dev, qpd->pqm->process); in process_termination_cpsch()
|