[PATCH v2] drm: document that user-space should avoid parsing EDIDs

Simon Ser contact at emersion.fr
Thu Oct 22 10:34:44 UTC 2020


User-space should avoid parsing EDIDs for metadata already exposed via
other KMS interfaces and properties. For instance, user-space should not
try to extract a list of modes from the EDID: the kernel might mutate
the mode list (because of link capabilities or quirks for instance).

Other metadata not exposed by KMS can be parsed by user-space. This
includes for instance monitor identification (make/model/serial) and
supported color-spaces.

v2: add short explanation why user-space shouldn't do this (Brian)

Signed-off-by: Simon Ser <contact at emersion.fr>
Suggested-by: Daniel Vetter <daniel.vetter at intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>
Acked-by: Thomas Zimmermann <tzimmermann at suse.de>
Cc: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
Cc: Brian Starkey <brian.starkey at arm.com>
---
 drivers/gpu/drm/drm_connector.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
index 717c4e7271b0..1913d8b4e16a 100644
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
@@ -960,6 +960,11 @@ static const struct drm_prop_enum_list dp_colorspaces[] = {
  * 	drm_connector_update_edid_property(), usually after having parsed
  * 	the EDID using drm_add_edid_modes(). Userspace cannot change this
  * 	property.
+ *
+ * 	User-space should not parse the EDID to obtain information exposed via
+ * 	other KMS properties (because the kernel might apply limits, quirks or
+ * 	fixups to the EDID). For instance, user-space should not try to parse
+ * 	mode lists from the EDID.
  * DPMS:
  * 	Legacy property for setting the power state of the connector. For atomic
  * 	drivers this is only provided for backwards compatibility with existing
-- 
2.28.0




More information about the dri-devel mailing list