Lines Matching refs:kiq

299 	struct amdgpu_kiq *kiq = &adev->gfx.kiq;  in amdgpu_gfx_kiq_init_ring()  local
302 spin_lock_init(&kiq->ring_lock); in amdgpu_gfx_kiq_init_ring()
307 ring->doorbell_index = adev->doorbell_index.kiq; in amdgpu_gfx_kiq_init_ring()
313 ring->eop_gpu_addr = kiq->eop_gpu_addr; in amdgpu_gfx_kiq_init_ring()
331 struct amdgpu_kiq *kiq = &adev->gfx.kiq; in amdgpu_gfx_kiq_fini() local
333 amdgpu_bo_free_kernel(&kiq->eop_obj, &kiq->eop_gpu_addr, NULL); in amdgpu_gfx_kiq_fini()
341 struct amdgpu_kiq *kiq = &adev->gfx.kiq; in amdgpu_gfx_kiq_init() local
344 AMDGPU_GEM_DOMAIN_GTT, &kiq->eop_obj, in amdgpu_gfx_kiq_init()
345 &kiq->eop_gpu_addr, (void **)&hpd); in amdgpu_gfx_kiq_init()
353 r = amdgpu_bo_reserve(kiq->eop_obj, true); in amdgpu_gfx_kiq_init()
356 amdgpu_bo_kunmap(kiq->eop_obj); in amdgpu_gfx_kiq_init()
357 amdgpu_bo_unreserve(kiq->eop_obj); in amdgpu_gfx_kiq_init()
370 ring = &adev->gfx.kiq.ring; in amdgpu_gfx_mqd_sw_init()
460 ring = &adev->gfx.kiq.ring; in amdgpu_gfx_mqd_sw_fini()
469 struct amdgpu_kiq *kiq = &adev->gfx.kiq; in amdgpu_gfx_disable_kcq() local
470 struct amdgpu_ring *kiq_ring = &kiq->ring; in amdgpu_gfx_disable_kcq()
473 if (!kiq->pmf || !kiq->pmf->kiq_unmap_queues) in amdgpu_gfx_disable_kcq()
476 spin_lock(&adev->gfx.kiq.ring_lock); in amdgpu_gfx_disable_kcq()
477 if (amdgpu_ring_alloc(kiq_ring, kiq->pmf->unmap_queues_size * in amdgpu_gfx_disable_kcq()
479 spin_unlock(&adev->gfx.kiq.ring_lock); in amdgpu_gfx_disable_kcq()
484 kiq->pmf->kiq_unmap_queues(kiq_ring, &adev->gfx.compute_ring[i], in amdgpu_gfx_disable_kcq()
487 if (adev->gfx.kiq.ring.sched.ready && !adev->job_hang) in amdgpu_gfx_disable_kcq()
489 spin_unlock(&adev->gfx.kiq.ring_lock); in amdgpu_gfx_disable_kcq()
509 struct amdgpu_kiq *kiq = &adev->gfx.kiq; in amdgpu_gfx_enable_kcq() local
510 struct amdgpu_ring *kiq_ring = &adev->gfx.kiq.ring; in amdgpu_gfx_enable_kcq()
514 if (!kiq->pmf || !kiq->pmf->kiq_map_queues || !kiq->pmf->kiq_set_resources) in amdgpu_gfx_enable_kcq()
534 spin_lock(&adev->gfx.kiq.ring_lock); in amdgpu_gfx_enable_kcq()
535 r = amdgpu_ring_alloc(kiq_ring, kiq->pmf->map_queues_size * in amdgpu_gfx_enable_kcq()
537 kiq->pmf->set_resources_size); in amdgpu_gfx_enable_kcq()
540 spin_unlock(&adev->gfx.kiq.ring_lock); in amdgpu_gfx_enable_kcq()
547 kiq->pmf->kiq_set_resources(kiq_ring, queue_mask); in amdgpu_gfx_enable_kcq()
549 kiq->pmf->kiq_map_queues(kiq_ring, &adev->gfx.compute_ring[i]); in amdgpu_gfx_enable_kcq()
552 spin_unlock(&adev->gfx.kiq.ring_lock); in amdgpu_gfx_enable_kcq()
790 struct amdgpu_kiq *kiq = &adev->gfx.kiq; in amdgpu_kiq_rreg() local
791 struct amdgpu_ring *ring = &kiq->ring; in amdgpu_kiq_rreg()
801 spin_lock_irqsave(&kiq->ring_lock, flags); in amdgpu_kiq_rreg()
813 spin_unlock_irqrestore(&kiq->ring_lock, flags); in amdgpu_kiq_rreg()
845 spin_unlock_irqrestore(&kiq->ring_lock, flags); in amdgpu_kiq_rreg()
858 struct amdgpu_kiq *kiq = &adev->gfx.kiq; in amdgpu_kiq_wreg() local
859 struct amdgpu_ring *ring = &kiq->ring; in amdgpu_kiq_wreg()
871 spin_lock_irqsave(&kiq->ring_lock, flags); in amdgpu_kiq_wreg()
879 spin_unlock_irqrestore(&kiq->ring_lock, flags); in amdgpu_kiq_wreg()
908 spin_unlock_irqrestore(&kiq->ring_lock, flags); in amdgpu_kiq_wreg()