summaryrefslogtreecommitdiffstats
path: root/include/drm
diff options
context:
space:
mode:
authorTomohito Esaki <etom@igel.co.jp>2022-01-28 15:08:34 +0900
committerDaniel Vetter <daniel.vetter@ffwll.ch>2022-01-31 21:45:23 +0100
commit2af104290da5e4858e8caefa068827d7392c6a09 (patch)
tree4760e7ee41888b74c664dc9bee58fd8b28a7b10f /include/drm
parent9987151a90567785beebcbd5c8ac58d05f254137 (diff)
downloadlinux-stable-2af104290da5e4858e8caefa068827d7392c6a09.tar.gz
linux-stable-2af104290da5e4858e8caefa068827d7392c6a09.tar.bz2
linux-stable-2af104290da5e4858e8caefa068827d7392c6a09.zip
drm: introduce fb_modifiers_not_supported flag in mode_config
If only linear modifier is advertised, since there are many drivers that only linear supported, the DRM core should handle this rather than open-coding in every driver. However, there are legacy drivers such as radeon that do not support modifiers but infer the actual layout of the underlying buffer. Therefore, a new flag fb_modifiers_not_supported is introduced for these legacy drivers, and allow_fb_modifiers is replaced with this new flag. v3: - change the order as follows: 1. add fb_modifiers_not_supported flag 2. add default modifiers 3. remove allow_fb_modifiers flag - add a conditional disable in amdgpu_dm_plane_init() v4: - modify kernel docs v5: - modify kernel docs Signed-off-by: Tomohito Esaki <etom@igel.co.jp> Acked-by: Harry Wentland <harry.wentland@amd.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/msgid/20220128060836.11216-2-etom@igel.co.jp
Diffstat (limited to 'include/drm')
-rw-r--r--include/drm/drm_mode_config.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h
index 91ca575a78de..4a93dac91cf9 100644
--- a/include/drm/drm_mode_config.h
+++ b/include/drm/drm_mode_config.h
@@ -934,6 +934,16 @@ struct drm_mode_config {
bool allow_fb_modifiers;
/**
+ * @fb_modifiers_not_supported:
+ *
+ * When this flag is set, the DRM device will not expose modifier
+ * support to userspace. This is only used by legacy drivers that infer
+ * the buffer layout through heuristics without using modifiers. New
+ * drivers shall not set fhis flag.
+ */
+ bool fb_modifiers_not_supported;
+
+ /**
* @normalize_zpos:
*
* If true the drm core will call drm_atomic_normalize_zpos() as part of