drm/radeon/kms: add a new gem_wait ioctl with read/write flags
The new DRM_RADEON_GEM_WAIT ioctl combines GEM_WAIT_IDLE and GEM_BUSY (there is a NO_WAIT flag to get the latter) with USAGE_READ and USAGE_WRITE flags to take advantage of the new ttm_bo_wait changes. Also bump the DRM version. Signed-off-by: Marek Olšák <maraeo@gmail.com> Reviewed-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -119,7 +119,7 @@ static inline u64 radeon_bo_mmap_offset(struct radeon_bo *bo)
|
||||
}
|
||||
|
||||
static inline int radeon_bo_wait(struct radeon_bo *bo, u32 *mem_type,
|
||||
bool no_wait)
|
||||
bool no_wait, enum ttm_buffer_usage usage)
|
||||
{
|
||||
int r;
|
||||
|
||||
@@ -130,7 +130,7 @@ static inline int radeon_bo_wait(struct radeon_bo *bo, u32 *mem_type,
|
||||
if (mem_type)
|
||||
*mem_type = bo->tbo.mem.mem_type;
|
||||
if (bo->tbo.sync_obj)
|
||||
r = ttm_bo_wait(&bo->tbo, true, true, no_wait, TTM_USAGE_READWRITE);
|
||||
r = ttm_bo_wait(&bo->tbo, true, true, no_wait, usage);
|
||||
spin_unlock(&bo->tbo.bdev->fence_lock);
|
||||
ttm_bo_unreserve(&bo->tbo);
|
||||
return r;
|
||||
|
Reference in New Issue
Block a user