Commit 8d4f4b82 authored by Ville Syrjälä's avatar Ville Syrjälä

drm: Document mode_config.max_width/height as the max fb dimensions

The meaning of the mode_config max_width/height fields has not been
entirely clear. They are used both as the max framebuffer dimensions,
and they are also used by drm_mode_getconnector() to filter out
any mode whose hdisplay/vdisplay exceed those limits.

Let's put it in writing that max_width/height only refrer to the max
framebuffer dimensions, and should those be higher than the hardware
limits for display timings the driver must validate the latter using
some other means.

We'll keep the max_width/height usage in drm_mode_getconnector()
because setcrtc treats hdisplay/vdisplay also as the primary plane
width, and having a plane bigger than the max fb size doesn't make
much sense (if we ignore scaling that is). It all works out fine
as long as the max fb dimensions are at least equal to the max
timing limits. If the opposite were true we may want to rethink
what drm_mode_getconnector() does. Maybe do the mode filtering
only for non-atomic userspace?
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180615173939.11353-1-ville.syrjala@linux.intel.comReviewed-by: default avatarManasi Navare <manasi.d.navare@intel.com>
parent c612ae05
...@@ -329,10 +329,10 @@ struct drm_mode_config_funcs { ...@@ -329,10 +329,10 @@ struct drm_mode_config_funcs {
/** /**
* struct drm_mode_config - Mode configuration control structure * struct drm_mode_config - Mode configuration control structure
* @min_width: minimum pixel width on this device * @min_width: minimum fb pixel width on this device
* @min_height: minimum pixel height on this device * @min_height: minimum fb pixel height on this device
* @max_width: maximum pixel width on this device * @max_width: maximum fb pixel width on this device
* @max_height: maximum pixel height on this device * @max_height: maximum fb pixel height on this device
* @funcs: core driver provided mode setting functions * @funcs: core driver provided mode setting functions
* @fb_base: base address of the framebuffer * @fb_base: base address of the framebuffer
* @poll_enabled: track polling support for this device * @poll_enabled: track polling support for this device
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment