diff options
author | Christian König <[email protected]> | 2021-02-17 13:50:49 +0100 |
---|---|---|
committer | Alex Deucher <[email protected]> | 2021-03-23 23:29:51 -0400 |
commit | 10ebcd953dfa34cc3a5744cd359db85bc94a0162 (patch) | |
tree | e8f6c2170e2d13aa10572a1f6713106b63e60a89 | |
parent | 596ee296849c40ccdae69ab7d62dfa0686dd8a9a (diff) |
drm/amdgpu: use new cursor in amdgpu_ttm_io_mem_pfn
Separate the drm_mm_node walking from the actual handling.
Signed-off-by: Christian König <[email protected]>
Acked-by: Oak Zeng <[email protected]>
Tested-by: Nirmoy Das <[email protected]>
Reviewed-by: Arunpravin <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c index f42dca455b9c..ebd192199c01 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c @@ -631,12 +631,10 @@ static unsigned long amdgpu_ttm_io_mem_pfn(struct ttm_buffer_object *bo, unsigned long page_offset) { struct amdgpu_device *adev = amdgpu_ttm_adev(bo->bdev); - uint64_t offset = (page_offset << PAGE_SHIFT); - struct drm_mm_node *mm; + struct amdgpu_res_cursor cursor; - mm = amdgpu_find_mm_node(&bo->mem, &offset); - offset += adev->gmc.aper_base; - return mm->start + (offset >> PAGE_SHIFT); + amdgpu_res_first(&bo->mem, (u64)page_offset << PAGE_SHIFT, 0, &cursor); + return (adev->gmc.aper_base + cursor.start) >> PAGE_SHIFT; } /** |