aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon_object.c
diff options
context:
space:
mode:
authorJerome Glisse <jglisse@redhat.com>2010-04-07 06:21:19 -0400
committerDave Airlie <airlied@redhat.com>2010-04-07 20:21:19 -0400
commit9d87fa2138d06ff400551800d67d522625033e35 (patch)
tree284cd0f73ccb2f2fad1c71f974d4e9e4d0035e81 /drivers/gpu/drm/radeon/radeon_object.c
parent3a89b4a9ca7ce11e3b7d5119aea917b9fc29a302 (diff)
drm/ttm: split no_wait argument in 2 GPU or reserve wait
There is case where we want to be able to wait only for the GPU while not waiting for other buffer to be unreserved. This patch split the no_wait argument all the way down in the whole ttm path so that upper level can decide on what to wait on or not. [airlied: squashed these 4 for bisectability reasons.] drm/radeon/kms: update to TTM no_wait splitted argument drm/nouveau: update to TTM no_wait splitted argument drm/vmwgfx: update to TTM no_wait splitted argument [vmwgfx patch: Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>] Signed-off-by: Jerome Glisse <jglisse@redhat.com> Acked-by: Thomas Hellstrom <thellstrom@vmware.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_object.c')
-rw-r--r--drivers/gpu/drm/radeon/radeon_object.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_object.c b/drivers/gpu/drm/radeon/radeon_object.c
index dc7e3f449138..4b441f87f47a 100644
--- a/drivers/gpu/drm/radeon/radeon_object.c
+++ b/drivers/gpu/drm/radeon/radeon_object.c
@@ -191,7 +191,7 @@ int radeon_bo_pin(struct radeon_bo *bo, u32 domain, u64 *gpu_addr)
191 } 191 }
192 for (i = 0; i < bo->placement.num_placement; i++) 192 for (i = 0; i < bo->placement.num_placement; i++)
193 bo->placements[i] |= TTM_PL_FLAG_NO_EVICT; 193 bo->placements[i] |= TTM_PL_FLAG_NO_EVICT;
194 r = ttm_bo_validate(&bo->tbo, &bo->placement, false, false); 194 r = ttm_bo_validate(&bo->tbo, &bo->placement, false, false, false);
195 if (likely(r == 0)) { 195 if (likely(r == 0)) {
196 bo->pin_count = 1; 196 bo->pin_count = 1;
197 if (gpu_addr != NULL) 197 if (gpu_addr != NULL)
@@ -215,7 +215,7 @@ int radeon_bo_unpin(struct radeon_bo *bo)
215 return 0; 215 return 0;
216 for (i = 0; i < bo->placement.num_placement; i++) 216 for (i = 0; i < bo->placement.num_placement; i++)
217 bo->placements[i] &= ~TTM_PL_FLAG_NO_EVICT; 217 bo->placements[i] &= ~TTM_PL_FLAG_NO_EVICT;
218 r = ttm_bo_validate(&bo->tbo, &bo->placement, false, false); 218 r = ttm_bo_validate(&bo->tbo, &bo->placement, false, false, false);
219 if (unlikely(r != 0)) 219 if (unlikely(r != 0))
220 dev_err(bo->rdev->dev, "%p validate failed for unpin\n", bo); 220 dev_err(bo->rdev->dev, "%p validate failed for unpin\n", bo);
221 return r; 221 return r;
@@ -330,7 +330,7 @@ int radeon_bo_list_validate(struct list_head *head)
330 lobj->rdomain); 330 lobj->rdomain);
331 } 331 }
332 r = ttm_bo_validate(&bo->tbo, &bo->placement, 332 r = ttm_bo_validate(&bo->tbo, &bo->placement,
333 true, false); 333 true, false, false);
334 if (unlikely(r)) 334 if (unlikely(r))
335 return r; 335 return r;
336 } 336 }