Lines Matching refs:adev

74 int amdgpu_cs_get_ring(struct amdgpu_device *adev, u32 ip_type,  in amdgpu_cs_get_ring()  argument
89 if (ring < adev->gfx.num_gfx_rings) { in amdgpu_cs_get_ring()
90 *out_ring = &adev->gfx.gfx_ring[ring]; in amdgpu_cs_get_ring()
93 adev->gfx.num_gfx_rings); in amdgpu_cs_get_ring()
98 if (ring < adev->gfx.num_compute_rings) { in amdgpu_cs_get_ring()
99 *out_ring = &adev->gfx.compute_ring[ring]; in amdgpu_cs_get_ring()
102 adev->gfx.num_compute_rings); in amdgpu_cs_get_ring()
107 if (ring < adev->sdma.num_instances) { in amdgpu_cs_get_ring()
108 *out_ring = &adev->sdma.instance[ring].ring; in amdgpu_cs_get_ring()
111 adev->sdma.num_instances); in amdgpu_cs_get_ring()
116 *out_ring = &adev->uvd.ring; in amdgpu_cs_get_ring()
120 *out_ring = &adev->vce.ring[ring]; in amdgpu_cs_get_ring()
137 gobj = drm_gem_object_lookup(p->adev->ddev, p->filp, in amdgpu_cs_user_fence_chunk()
289 static u64 amdgpu_cs_get_threshold_for_moves(struct amdgpu_device *adev) in amdgpu_cs_get_threshold_for_moves() argument
291 u64 real_vram_size = adev->mc.real_vram_size; in amdgpu_cs_get_threshold_for_moves()
292 u64 vram_usage = atomic64_read(&adev->vram_usage); in amdgpu_cs_get_threshold_for_moves()
339 int amdgpu_cs_list_validate(struct amdgpu_device *adev, in amdgpu_cs_list_validate() argument
346 u64 bytes_moved_threshold = amdgpu_cs_get_threshold_for_moves(adev); in amdgpu_cs_list_validate()
373 initial_bytes_moved = atomic64_read(&adev->num_bytes_moved); in amdgpu_cs_list_validate()
375 bytes_moved += atomic64_read(&adev->num_bytes_moved) - in amdgpu_cs_list_validate()
409 p->vm_bos = amdgpu_vm_get_bos(p->adev, &fpriv->vm, in amdgpu_cs_parser_relocs()
423 r = amdgpu_cs_list_validate(p->adev, &fpriv->vm, &p->validated); in amdgpu_cs_parser_relocs()
427 r = amdgpu_cs_list_validate(p->adev, &fpriv->vm, &duplicates); in amdgpu_cs_parser_relocs()
447 r = amdgpu_sync_resv(p->adev, &p->ibs[0].sync, resv, p->filp); in amdgpu_cs_sync_rings()
510 amdgpu_ib_free(parser->adev, &parser->ibs[i]); in amdgpu_cs_parser_fini()
519 struct amdgpu_device *adev = p->adev; in amdgpu_bo_vm_update_pte() local
524 r = amdgpu_vm_update_page_directory(adev, vm); in amdgpu_bo_vm_update_pte()
528 r = amdgpu_sync_fence(adev, &p->ibs[0].sync, vm->page_directory_fence); in amdgpu_bo_vm_update_pte()
532 r = amdgpu_vm_clear_freed(adev, vm); in amdgpu_bo_vm_update_pte()
549 r = amdgpu_vm_bo_update(adev, bo_va, &bo->tbo.mem); in amdgpu_bo_vm_update_pte()
554 r = amdgpu_sync_fence(adev, &p->ibs[0].sync, f); in amdgpu_bo_vm_update_pte()
561 r = amdgpu_vm_clear_invalids(adev, vm, &p->ibs[0].sync); in amdgpu_bo_vm_update_pte()
571 amdgpu_vm_bo_invalidate(adev, bo); in amdgpu_bo_vm_update_pte()
578 static int amdgpu_cs_ib_vm_chunk(struct amdgpu_device *adev, in amdgpu_cs_ib_vm_chunk() argument
606 static int amdgpu_cs_handle_lockup(struct amdgpu_device *adev, int r) in amdgpu_cs_handle_lockup() argument
609 r = amdgpu_gpu_reset(adev); in amdgpu_cs_handle_lockup()
616 static int amdgpu_cs_ib_fill(struct amdgpu_device *adev, in amdgpu_cs_ib_fill() argument
637 r = amdgpu_cs_get_ring(adev, chunk_ib->ip_type, in amdgpu_cs_ib_fill()
733 static int amdgpu_cs_dependencies(struct amdgpu_device *adev, in amdgpu_cs_dependencies() argument
764 r = amdgpu_cs_get_ring(adev, deps[j].ip_type, in amdgpu_cs_dependencies()
782 r = amdgpu_sync_fence(adev, &ib->sync, fence); in amdgpu_cs_dependencies()
799 amdgpu_ib_free(job->adev, &job->ibs[i]); in amdgpu_cs_free_job()
808 struct amdgpu_device *adev = dev->dev_private; in amdgpu_cs_ioctl() local
814 if (!adev->accel_working) in amdgpu_cs_ioctl()
817 parser.adev = adev; in amdgpu_cs_ioctl()
824 r = amdgpu_cs_handle_lockup(adev, r); in amdgpu_cs_ioctl()
834 r = amdgpu_cs_ib_fill(adev, &parser); in amdgpu_cs_ioctl()
838 r = amdgpu_cs_dependencies(adev, &parser); in amdgpu_cs_ioctl()
849 r = amdgpu_cs_ib_vm_chunk(adev, &parser); in amdgpu_cs_ioctl()
866 job->adev = parser.adev; in amdgpu_cs_ioctl()
902 r = amdgpu_ib_schedule(adev, parser.num_ibs, parser.ibs, in amdgpu_cs_ioctl()
911 r = amdgpu_cs_handle_lockup(adev, r); in amdgpu_cs_ioctl()
928 struct amdgpu_device *adev = dev->dev_private; in amdgpu_cs_wait_ioctl() local
935 r = amdgpu_cs_get_ring(adev, wait->in.ip_type, wait->in.ip_instance, in amdgpu_cs_wait_ioctl()