diff options
author | Dave Airlie <airlied@redhat.com> | 2013-06-10 18:14:21 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2013-06-10 18:14:21 -0400 |
commit | edee06b6f6b55c81c4cb78d0776d8ca01b05380d (patch) | |
tree | b2ed77452d8375d53a57012c0ff16affb7aef717 /include/drm | |
parent | d20d3174806ef6589cb912a488657d21fcd7ece2 (diff) | |
parent | 71d7282a0f1abb488e5be4d154893579624bc683 (diff) |
Merge branch 'drm/next' of git://linuxtv.org/pinchartl/fbdev into drm-next
GEM CMA PRIME support from Laurent.
* 'drm/next' of git://linuxtv.org/pinchartl/fbdev:
drm: GEM CMA: Add DRM PRIME support
drm: GEM CMA: Split object mapping into GEM mapping and CMA mapping
drm: GEM CMA: Split object creation into object alloc and DMA memory alloc
drm/omap: Use drm_gem_mmap_obj() to implement dma-buf mmap
drm/gem: Split drm_gem_mmap() into object search and object mapping
Diffstat (limited to 'include/drm')
-rw-r--r-- | include/drm/drmP.h | 2 | ||||
-rw-r--r-- | include/drm/drm_gem_cma_helper.h | 9 |
2 files changed, 11 insertions, 0 deletions
diff --git a/include/drm/drmP.h b/include/drm/drmP.h index e4f765c80fb0..82670ac0d774 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h | |||
@@ -1616,6 +1616,8 @@ int drm_gem_private_object_init(struct drm_device *dev, | |||
1616 | void drm_gem_object_handle_free(struct drm_gem_object *obj); | 1616 | void drm_gem_object_handle_free(struct drm_gem_object *obj); |
1617 | void drm_gem_vm_open(struct vm_area_struct *vma); | 1617 | void drm_gem_vm_open(struct vm_area_struct *vma); |
1618 | void drm_gem_vm_close(struct vm_area_struct *vma); | 1618 | void drm_gem_vm_close(struct vm_area_struct *vma); |
1619 | int drm_gem_mmap_obj(struct drm_gem_object *obj, unsigned long obj_size, | ||
1620 | struct vm_area_struct *vma); | ||
1619 | int drm_gem_mmap(struct file *filp, struct vm_area_struct *vma); | 1621 | int drm_gem_mmap(struct file *filp, struct vm_area_struct *vma); |
1620 | 1622 | ||
1621 | #include <drm/drm_global.h> | 1623 | #include <drm/drm_global.h> |
diff --git a/include/drm/drm_gem_cma_helper.h b/include/drm/drm_gem_cma_helper.h index 63397ced9254..6e17251e9b28 100644 --- a/include/drm/drm_gem_cma_helper.h +++ b/include/drm/drm_gem_cma_helper.h | |||
@@ -4,6 +4,9 @@ | |||
4 | struct drm_gem_cma_object { | 4 | struct drm_gem_cma_object { |
5 | struct drm_gem_object base; | 5 | struct drm_gem_object base; |
6 | dma_addr_t paddr; | 6 | dma_addr_t paddr; |
7 | struct sg_table *sgt; | ||
8 | |||
9 | /* For objects with DMA memory allocated by GEM CMA */ | ||
7 | void *vaddr; | 10 | void *vaddr; |
8 | }; | 11 | }; |
9 | 12 | ||
@@ -45,4 +48,10 @@ extern const struct vm_operations_struct drm_gem_cma_vm_ops; | |||
45 | void drm_gem_cma_describe(struct drm_gem_cma_object *obj, struct seq_file *m); | 48 | void drm_gem_cma_describe(struct drm_gem_cma_object *obj, struct seq_file *m); |
46 | #endif | 49 | #endif |
47 | 50 | ||
51 | struct dma_buf *drm_gem_cma_dmabuf_export(struct drm_device *drm_dev, | ||
52 | struct drm_gem_object *obj, | ||
53 | int flags); | ||
54 | struct drm_gem_object *drm_gem_cma_dmabuf_import(struct drm_device *drm_dev, | ||
55 | struct dma_buf *dma_buf); | ||
56 | |||
48 | #endif /* __DRM_GEM_CMA_HELPER_H__ */ | 57 | #endif /* __DRM_GEM_CMA_HELPER_H__ */ |