summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/exynos/exynos_drm_gem.h
diff options
context:
space:
mode:
authorInki Dae <inki.dae@samsung.com>2012-12-07 17:51:27 +0900
committerInki Dae <daeinki@gmail.com>2012-12-13 06:05:45 -0800
commit4744ad2414bd890d37a99df4726be733137aa3f7 (patch)
tree3c06797a1a8899d5687064aff27030e2d1b2f80b /drivers/gpu/drm/exynos/exynos_drm_gem.h
parent662aa6d7632cab054277bafda67d13d9a8a81929 (diff)
downloadtalos-obmc-linux-4744ad2414bd890d37a99df4726be733137aa3f7.tar.gz
talos-obmc-linux-4744ad2414bd890d37a99df4726be733137aa3f7.zip
drm/exynos: use DMA_ATTR_NO_KERNEL_MAPPING attribute
Changelog v3: just code cleanup. Changelog v2: fix argument to dma_mmap_attr function. - use pages instead of kvaddr because kvaddr is 0 with DMA_ATTR_NO_KERNEL_MAPPING. Changelog v1: When gem allocation is requested, kernel space mapping isn't needed. But if need, such as console framebuffer, the physical pages would be mapped with kernel space though vmap function. Signed-off-by: Inki Dae <inki.dae@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Diffstat (limited to 'drivers/gpu/drm/exynos/exynos_drm_gem.h')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_gem.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.h b/drivers/gpu/drm/exynos/exynos_drm_gem.h
index d3ea106a9a77..f11f2afd5bfc 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_gem.h
+++ b/drivers/gpu/drm/exynos/exynos_drm_gem.h
@@ -40,6 +40,7 @@
* - this address could be physical address without IOMMU and
* device address with IOMMU.
* @write: whether pages will be written to by the caller.
+ * @pages: Array of backing pages.
* @sgt: sg table to transfer page data.
* @size: size of allocated memory region.
* @pfnmap: indicate whether memory region from userptr is mmaped with
@@ -51,6 +52,7 @@ struct exynos_drm_gem_buf {
dma_addr_t dma_addr;
struct dma_attrs dma_attrs;
unsigned int write;
+ struct page **pages;
struct sg_table *sgt;
unsigned long size;
bool pfnmap;
OpenPOWER on IntegriCloud