summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/radeon/radeon.h
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2014-11-19 16:01:26 +0300
committerAlex Deucher <alexander.deucher@amd.com>2014-11-20 21:00:18 +0300
commit94214635f09c9211023730acdff9342fdf100aee (patch)
treedb9bc6136929cfad3959c6b23c435420f5382afb /drivers/gpu/drm/radeon/radeon.h
parent7c42bc1aa23fc061a6ff9c2bd9208817bd54ea04 (diff)
downloadlinux-94214635f09c9211023730acdff9342fdf100aee.tar.xz
drm/radeon: fence BO_VAs manually
This allows us to finally remove the VM fence and so allow concurrent use of it from different engines. Signed-off-by: Christian König <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon.h')
-rw-r--r--drivers/gpu/drm/radeon/radeon.h7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index 79f5f5bf4c0c..3207bb60715e 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -456,6 +456,7 @@ struct radeon_bo_va {
struct list_head bo_list;
uint32_t flags;
uint64_t addr;
+ struct radeon_fence *last_pt_update;
unsigned ref_count;
/* protected by vm mutex */
@@ -915,6 +916,8 @@ struct radeon_vm_id {
};
struct radeon_vm {
+ struct mutex mutex;
+
struct rb_root va;
/* BOs moved, but not yet updated in the PT */
@@ -932,10 +935,6 @@ struct radeon_vm {
struct radeon_bo_va *ib_bo_va;
- struct mutex mutex;
- /* last fence for cs using this vm */
- struct radeon_fence *fence;
-
/* for id and flush management per ring */
struct radeon_vm_id ids[RADEON_NUM_RINGS];
};