summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/msm/msm_gem.h
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2017-06-13 13:54:13 -0400
committerRob Clark <robdclark@gmail.com>2017-06-16 11:16:06 -0400
commit4b85f7f5cf776b0fcd4a2e38cb9c69849aae0fc5 (patch)
treef836e8192980d9ba943174436ab616f87af20d1f /drivers/gpu/drm/msm/msm_gem.h
parentf4839bd5126310635314610a85468e87b40ce4c8 (diff)
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.h4
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;