summaryrefslogtreecommitdiffstats
path: root/include/drm/drm_simple_kms_helper.h
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2018-02-20 08:28:59 +0100
committerLinus Walleij <linus.walleij@linaro.org>2018-02-20 08:42:17 +0100
commit40275dc4edb49d7ed543eb847f618dc12e5a024c (patch)
treeafecf3102f03967ce4c4166fe6b16a2b33deb22a /include/drm/drm_simple_kms_helper.h
parent1aecabb5b2d1dc1a821cdecda607eb70a8dd5124 (diff)
downloadlinux-40275dc4edb49d7ed543eb847f618dc12e5a024c.tar.gz
linux-40275dc4edb49d7ed543eb847f618dc12e5a024c.tar.bz2
linux-40275dc4edb49d7ed543eb847f618dc12e5a024c.zip
drm: simple_kms_helper: Add mode_valid() callback support
The PL111 needs to filter valid modes based on memory bandwidth. I guess it is a pretty simple operation, so we can still claim the DRM KMS helper pipeline is simple after adding this (optional) vtable callback. Reviewed-by: Eric Anholt <eric@anholt.net> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20180220072859.3386-1-linus.walleij@linaro.org
Diffstat (limited to 'include/drm/drm_simple_kms_helper.h')
-rw-r--r--include/drm/drm_simple_kms_helper.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/drm/drm_simple_kms_helper.h b/include/drm/drm_simple_kms_helper.h
index 6d9adbb46293..d9e4c3c3f009 100644
--- a/include/drm/drm_simple_kms_helper.h
+++ b/include/drm/drm_simple_kms_helper.h
@@ -22,6 +22,20 @@ struct drm_simple_display_pipe;
*/
struct drm_simple_display_pipe_funcs {
/**
+ * @mode_valid:
+ *
+ * This function is called to filter out valid modes from the
+ * suggestions suggested by the bridge or display. This optional
+ * hook is passed in when initializing the pipeline.
+ *
+ * RETURNS:
+ *
+ * drm_mode_status Enum
+ */
+ enum drm_mode_status (*mode_valid)(struct drm_crtc *crtc,
+ const struct drm_display_mode *mode);
+
+ /**
* @enable:
*
* This function should be used to enable the pipeline.