aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
diff options
context:
space:
mode:
authorChunming Zhou <David1.Zhou@amd.com>2017-07-12 00:36:47 -0400
committerAlex Deucher <alexander.deucher@amd.com>2017-07-25 16:30:03 -0400
commit07306b4f5f7a8ba6a9de96420d3524dcc8698b00 (patch)
tree4b15bdad81d23c1f525c0f20374acddb81abf1b4 /drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
parent2014bc3febef3a40646fb82ea752df2b20e0cecc (diff)
drm/amdgpu: ttm_bind only when user needs gpu_addr in bo pin
Signed-off-by: Chunming Zhou <David1.Zhou@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_object.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_object.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
index a019556a8e71..3ec43cf9ad78 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
@@ -735,15 +735,16 @@ int amdgpu_bo_pin_restricted(struct amdgpu_bo *bo, u32 domain,
735 dev_err(adev->dev, "%p pin failed\n", bo); 735 dev_err(adev->dev, "%p pin failed\n", bo);
736 goto error; 736 goto error;
737 } 737 }
738 r = amdgpu_ttm_bind(&bo->tbo, &bo->tbo.mem);
739 if (unlikely(r)) {
740 dev_err(adev->dev, "%p bind failed\n", bo);
741 goto error;
742 }
743 738
744 bo->pin_count = 1; 739 bo->pin_count = 1;
745 if (gpu_addr != NULL) 740 if (gpu_addr != NULL) {
741 r = amdgpu_ttm_bind(&bo->tbo, &bo->tbo.mem);
742 if (unlikely(r)) {
743 dev_err(adev->dev, "%p bind failed\n", bo);
744 goto error;
745 }
746 *gpu_addr = amdgpu_bo_gpu_offset(bo); 746 *gpu_addr = amdgpu_bo_gpu_offset(bo);
747 }
747 if (domain == AMDGPU_GEM_DOMAIN_VRAM) { 748 if (domain == AMDGPU_GEM_DOMAIN_VRAM) {
748 adev->vram_pin_size += amdgpu_bo_size(bo); 749 adev->vram_pin_size += amdgpu_bo_size(bo);
749 if (bo->flags & AMDGPU_GEM_CREATE_NO_CPU_ACCESS) 750 if (bo->flags & AMDGPU_GEM_CREATE_NO_CPU_ACCESS)