summaryrefslogtreecommitdiffstats
path: root/include/drm
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2015-12-08 09:49:19 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2015-12-15 10:22:27 +0100
commitd55f5320c7811d3858edaef5f2d4a9a7e43b1af8 (patch)
tree6d88581519a769d7053f4b143a0c685b3b3fdc79 /include/drm
parent07bad49ea89558583bc3d80c27e6c234fe0a4b63 (diff)
downloadlinux-d55f5320c7811d3858edaef5f2d4a9a7e43b1af8.tar.gz
linux-d55f5320c7811d3858edaef5f2d4a9a7e43b1af8.tar.bz2
linux-d55f5320c7811d3858edaef5f2d4a9a7e43b1af8.zip
drm: Move more framebuffer doc from docbook to kerneldoc
I missed a few paragraphs in the docbook that need to be pulled into the fbdev vfunc docs. v2: Spelling fixes from Thierry. Cc: Thierry Reding <treding@nvidia.com> Link: http://patchwork.freedesktop.org/patch/msgid/1449564561-3896-3-git-send-email-daniel.vetter@ffwll.ch Reviewed-by: Thierry Reding <treding@nvidia.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Diffstat (limited to 'include/drm')
-rw-r--r--include/drm/drm_crtc.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
index c2f98ba2bb98..3b040b355472 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
@@ -172,7 +172,9 @@ struct drm_framebuffer_funcs {
* Clean up framebuffer resources, specifically also unreference the
* backing storage. The core guarantees to call this function for every
* framebuffer successfully created by ->fb_create() in
- * &drm_mode_config_funcs.
+ * &drm_mode_config_funcs. Drivers must also call
+ * drm_framebuffer_cleanup() to release DRM core resources for this
+ * framebuffer.
*/
void (*destroy)(struct drm_framebuffer *framebuffer);
@@ -187,6 +189,9 @@ struct drm_framebuffer_funcs {
* copying the current screen contents to a private buffer and blending
* between that and the new contents.
*
+ * GEM based drivers should call drm_gem_handle_create() to create the
+ * handle.
+ *
* RETURNS:
*
* 0 on success or a negative error code on failure.
@@ -1731,6 +1736,17 @@ struct drm_mode_config_funcs {
* requested metadata, but most of that is left to the driver. See
* struct &drm_mode_fb_cmd2 for details.
*
+ * If the parameters are deemed valid and the backing storage objects in
+ * the underlying memory manager all exist, then the driver allocates
+ * a new &drm_framebuffer structure, subclassed to contain
+ * driver-specific information (like the internal native buffer object
+ * references). It also needs to fill out all relevant metadata, which
+ * should be done by calling drm_helper_mode_fill_fb_struct().
+ *
+ * The initialization is finalized by calling drm_framebuffer_init(),
+ * which registers the framebuffer and makes it accessible to other
+ * threads.
+ *
* RETURNS:
*
* A new framebuffer with an initial reference count of 1 or a negative