drm/fb: document drm_fb_helper_surface_size

There has been some confusion about this struct.  Lack of documentation
probably didn't help.

Signed-off-by: Rob Clark <robdclark@gmail.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Rob Clark 2015-03-11 10:23:08 -04:00 committed by Daniel Vetter
parent 1d002fa720
commit b7b5ee5931
1 changed files with 19 additions and 0 deletions

View File

@ -44,6 +44,25 @@ struct drm_fb_helper_crtc {
int x, y; int x, y;
}; };
/**
* struct drm_fb_helper_surface_size - describes fbdev size and scanout surface size
* @fb_width: fbdev width
* @fb_height: fbdev height
* @surface_width: scanout buffer width
* @surface_height: scanout buffer height
* @surface_bpp: scanout buffer bpp
* @surface_depth: scanout buffer depth
*
* Note that the scanout surface width/height may be larger than the fbdev
* width/height. In case of multiple displays, the scanout surface is sized
* according to the largest width/height (so it is large enough for all CRTCs
* to scanout). But the fbdev width/height is sized to the minimum width/
* height of all the displays. This ensures that fbcon fits on the smallest
* of the attached displays.
*
* So what is passed to drm_fb_helper_fill_var() should be fb_width/fb_height,
* rather than the surface size.
*/
struct drm_fb_helper_surface_size { struct drm_fb_helper_surface_size {
u32 fb_width; u32 fb_width;
u32 fb_height; u32 fb_height;