aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/msm/msm_drv.h
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2013-09-28 11:28:35 -0400
committerRob Clark <robdclark@gmail.com>2013-11-01 12:39:44 -0400
commit05b849111c07454fd2f5b074ca7eb56ccdb8828c (patch)
tree4f720dff8a12e0c5dec385b6e81f6475a69b554c /drivers/gpu/drm/msm/msm_drv.h
parent959f58544b7f20c92d5eb43d1232c96c15c01bfb (diff)
drm/msm: prime support
Signed-off-by: Rob Clark <robdclark@gmail.com> Acked-by: David Brown <davidb@codeaurora.org>
Diffstat (limited to 'drivers/gpu/drm/msm/msm_drv.h')
-rw-r--r--drivers/gpu/drm/msm/msm_drv.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h
index df8f1d084bc1..9ce90c267ef8 100644
--- a/drivers/gpu/drm/msm/msm_drv.h
+++ b/drivers/gpu/drm/msm/msm_drv.h
@@ -141,13 +141,20 @@ uint64_t msm_gem_mmap_offset(struct drm_gem_object *obj);
141int msm_gem_get_iova_locked(struct drm_gem_object *obj, int id, 141int msm_gem_get_iova_locked(struct drm_gem_object *obj, int id,
142 uint32_t *iova); 142 uint32_t *iova);
143int msm_gem_get_iova(struct drm_gem_object *obj, int id, uint32_t *iova); 143int msm_gem_get_iova(struct drm_gem_object *obj, int id, uint32_t *iova);
144struct page **msm_gem_get_pages(struct drm_gem_object *obj);
145void msm_gem_put_pages(struct drm_gem_object *obj);
144void msm_gem_put_iova(struct drm_gem_object *obj, int id); 146void msm_gem_put_iova(struct drm_gem_object *obj, int id);
145int msm_gem_dumb_create(struct drm_file *file, struct drm_device *dev, 147int msm_gem_dumb_create(struct drm_file *file, struct drm_device *dev,
146 struct drm_mode_create_dumb *args); 148 struct drm_mode_create_dumb *args);
147int msm_gem_dumb_destroy(struct drm_file *file, struct drm_device *dev,
148 uint32_t handle);
149int msm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, 149int msm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev,
150 uint32_t handle, uint64_t *offset); 150 uint32_t handle, uint64_t *offset);
151struct sg_table *msm_gem_prime_get_sg_table(struct drm_gem_object *obj);
152void *msm_gem_prime_vmap(struct drm_gem_object *obj);
153void msm_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr);
154struct drm_gem_object *msm_gem_prime_import_sg_table(struct drm_device *dev,
155 size_t size, struct sg_table *sg);
156int msm_gem_prime_pin(struct drm_gem_object *obj);
157void msm_gem_prime_unpin(struct drm_gem_object *obj);
151void *msm_gem_vaddr_locked(struct drm_gem_object *obj); 158void *msm_gem_vaddr_locked(struct drm_gem_object *obj);
152void *msm_gem_vaddr(struct drm_gem_object *obj); 159void *msm_gem_vaddr(struct drm_gem_object *obj);
153int msm_gem_queue_inactive_work(struct drm_gem_object *obj, 160int msm_gem_queue_inactive_work(struct drm_gem_object *obj,
@@ -163,6 +170,8 @@ int msm_gem_new_handle(struct drm_device *dev, struct drm_file *file,
163 uint32_t size, uint32_t flags, uint32_t *handle); 170 uint32_t size, uint32_t flags, uint32_t *handle);
164struct drm_gem_object *msm_gem_new(struct drm_device *dev, 171struct drm_gem_object *msm_gem_new(struct drm_device *dev,
165 uint32_t size, uint32_t flags); 172 uint32_t size, uint32_t flags);
173struct drm_gem_object *msm_gem_import(struct drm_device *dev,
174 uint32_t size, struct sg_table *sgt);
166 175
167struct drm_gem_object *msm_framebuffer_bo(struct drm_framebuffer *fb, int plane); 176struct drm_gem_object *msm_framebuffer_bo(struct drm_framebuffer *fb, int plane);
168const struct msm_format *msm_framebuffer_format(struct drm_framebuffer *fb); 177const struct msm_format *msm_framebuffer_format(struct drm_framebuffer *fb);