summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2017-08-01 11:51:43 +0300
committerAlex Deucher <alexander.deucher@amd.com>2017-08-17 22:46:07 +0300
commitec681545afe5a448b43a2fe5c206ee48e19dabb3 (patch)
treef69985a00503c64e886b83db2dbe2a9bc1994b6e /drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
parent4ab4016aaf82153d144fa678cd6b4b5b6f25ed70 (diff)
downloadlinux-ec681545afe5a448b43a2fe5c206ee48e19dabb3.tar.xz
drm/amdgpu: separate bo_va structure
Split that into vm_bo_base and bo_va to allow other uses as well. Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_object.h')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_object.h14
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
index 9b7b4fcb047b..a288fa6d72c8 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
@@ -33,6 +33,7 @@
#define AMDGPU_BO_INVALID_OFFSET LONG_MAX
+/* bo virtual addresses in a vm */
struct amdgpu_bo_va_mapping {
struct list_head list;
struct rb_node rb;
@@ -43,26 +44,19 @@ struct amdgpu_bo_va_mapping {
uint64_t flags;
};
-/* bo virtual addresses in a specific vm */
+/* User space allocated BO in a VM */
struct amdgpu_bo_va {
+ struct amdgpu_vm_bo_base base;
+
/* protected by bo being reserved */
- struct list_head bo_list;
struct dma_fence *last_pt_update;
unsigned ref_count;
- /* protected by vm mutex and spinlock */
- struct list_head vm_status;
-
/* mappings for this bo_va */
struct list_head invalids;
struct list_head valids;
-
- /* constant after initialization */
- struct amdgpu_vm *vm;
- struct amdgpu_bo *bo;
};
-
struct amdgpu_bo {
/* Protected by tbo.reserved */
u32 preferred_domains;