aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/drm/drm_gem_cma_helper.h
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2014-11-03 11:48:49 +0100
committerThierry Reding <treding@nvidia.com>2014-11-13 13:27:17 +0100
commit6d1782919dc9b860c0a1d712f1e1f146af16f6c5 (patch)
tree15e51af15ef96c670946d3112c55521808b7bf75 /include/drm/drm_gem_cma_helper.h
parentdrm/doc: Add GEM/CMA helpers to kerneldoc (diff)
downloadwireguard-linux-6d1782919dc9b860c0a1d712f1e1f146af16f6c5.tar.xz
wireguard-linux-6d1782919dc9b860c0a1d712f1e1f146af16f6c5.zip
drm/cma: Introduce drm_gem_cma_dumb_create_internal()
This function is similar to drm_gem_cma_dumb_create() but targetted at kernel internal users so that they can override the pitch and size requirements of the dumb buffer. It is important to make this difference because the IOCTL says that the pitch and size fields are to be considered outputs and therefore should not be used in computations of the framebuffer size. Internal users may still want to use this code to avoid duplication and at the same time pass on additional, driver-specific restrictions on the pitch and size. While at it, convert the R-Car DU driver, the single user that overrides the pitch, to use the new internal helper. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'include/drm/drm_gem_cma_helper.h')
-rw-r--r--include/drm/drm_gem_cma_helper.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/drm/drm_gem_cma_helper.h b/include/drm/drm_gem_cma_helper.h
index 873d4eb7f125..acd6af8a8e67 100644
--- a/include/drm/drm_gem_cma_helper.h
+++ b/include/drm/drm_gem_cma_helper.h
@@ -30,6 +30,11 @@ to_drm_gem_cma_obj(struct drm_gem_object *gem_obj)
void drm_gem_cma_free_object(struct drm_gem_object *gem_obj);
/* create memory region for DRM framebuffer */
+int drm_gem_cma_dumb_create_internal(struct drm_file *file_priv,
+ struct drm_device *drm,
+ struct drm_mode_create_dumb *args);
+
+/* create memory region for DRM framebuffer */
int drm_gem_cma_dumb_create(struct drm_file *file_priv,
struct drm_device *drm,
struct drm_mode_create_dumb *args);