diff options
author | Rob Clark <robdclark@gmail.com> | 2017-06-13 20:54:13 +0300 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2017-06-16 18:16:06 +0300 |
commit | 4b85f7f5cf776b0fcd4a2e38cb9c69849aae0fc5 (patch) | |
tree | f836e8192980d9ba943174436ab616f87af20d1f /drivers/gpu/drm/msm/msm_gem.h | |
parent | f4839bd5126310635314610a85468e87b40ce4c8 (diff) | |
download | linux-4b85f7f5cf776b0fcd4a2e38cb9c69849aae0fc5.tar.xz |
drm/msm: support for an arbitrary number of address spaces
It means we have to do a list traversal where we once had an index into
a table. But the list will normally have one or two entries.
Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm/msm_gem.h')
-rw-r--r-- | drivers/gpu/drm/msm/msm_gem.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/msm_gem.h b/drivers/gpu/drm/msm/msm_gem.h index 4b4b352b5718..ff468da70fb6 100644 --- a/drivers/gpu/drm/msm/msm_gem.h +++ b/drivers/gpu/drm/msm/msm_gem.h @@ -39,6 +39,8 @@ struct msm_gem_address_space { struct msm_gem_vma { struct drm_mm_node node; uint64_t iova; + struct msm_gem_address_space *aspace; + struct list_head list; /* node in msm_gem_object::vmas */ }; struct msm_gem_object { @@ -78,7 +80,7 @@ struct msm_gem_object { struct sg_table *sgt; void *vaddr; - struct msm_gem_vma domain[NUM_DOMAINS]; + struct list_head vmas; /* list of msm_gem_vma */ /* normally (resv == &_resv) except for imported bo's */ struct reservation_object *resv; |