summaryrefslogtreecommitdiffstats
path: root/include/drm/drm_gem_cma_helper.h
diff options
context:
space:
mode:
authorBenjamin Gaignard2017-01-04 10:12:57 +0100
committerDaniel Vetter2017-01-06 11:04:54 +0100
commit62a0d98a188cc4ebd8ea54b37d274ec20465e464 (patch)
treebb649f5cc408727179380fce600adeba99b2ebbd /include/drm/drm_gem_cma_helper.h
parentdrm: compile drm_vm.c only when needed (diff)
downloadkernel-qcow2-linux-62a0d98a188cc4ebd8ea54b37d274ec20465e464.tar.gz
kernel-qcow2-linux-62a0d98a188cc4ebd8ea54b37d274ec20465e464.tar.xz
kernel-qcow2-linux-62a0d98a188cc4ebd8ea54b37d274ec20465e464.zip
drm: allow to use mmuless SoC
Some SoC without MMU have display driver where a drm/kms driver could be implemented. Before doing such kind of thing drm/kms must allow to use mmuless devices. This patch propose to remove MMU configuration flag and add a cma helper function to help implementing mmuless display driver version 4: - add documentation about drm_gem_cma_get_unmapped_area() - stub it MMU case Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org> [danvet: Use recommended struct member references in kernel-doc.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: http://patchwork.freedesktop.org/patch/msgid/1483521177-21794-4-git-send-email-benjamin.gaignard@linaro.org
Diffstat (limited to 'include/drm/drm_gem_cma_helper.h')
-rw-r--r--include/drm/drm_gem_cma_helper.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/drm/drm_gem_cma_helper.h b/include/drm/drm_gem_cma_helper.h
index acd6af8a8e67..2abcd5190cc1 100644
--- a/include/drm/drm_gem_cma_helper.h
+++ b/include/drm/drm_gem_cma_helper.h
@@ -53,6 +53,23 @@ struct drm_gem_cma_object *drm_gem_cma_create(struct drm_device *drm,
extern const struct vm_operations_struct drm_gem_cma_vm_ops;
+#ifndef CONFIG_MMU
+unsigned long drm_gem_cma_get_unmapped_area(struct file *filp,
+ unsigned long addr,
+ unsigned long len,
+ unsigned long pgoff,
+ unsigned long flags);
+#else
+static inline unsigned long drm_gem_cma_get_unmapped_area(struct file *filp,
+ unsigned long addr,
+ unsigned long len,
+ unsigned long pgoff,
+ unsigned long flags)
+{
+ return -EINVAL;
+}
+#endif
+
#ifdef CONFIG_DEBUG_FS
void drm_gem_cma_describe(struct drm_gem_cma_object *obj, struct seq_file *m);
#endif