* [PATCH v1 00/13] drm/edid: expand on struct drm_edid usage
@ 2022-05-24 10:39 Jani Nikula
0 siblings, 0 replies; only message in thread
From: Jani Nikula @ 2022-05-24 10:39 UTC (permalink / raw)
To: dri-devel, intel-gfx
Cc: amd-gfx, Daniel Vetter, Karol Herbst, Neil Armstrong, jani.nikula,
Robert Foss, Xinhui Pan, Maarten Lankhorst, Maxime Ripard,
Adam Jackson, Ben Skeggs, Andrzej Hajda, Thomas Zimmermann,
Alex Deucher, Dave Airlie, nouveau, Harry Wentland,
Christian König, ville.syrjala, Laurent Pinchart
Hey all, I'm adding a bunch of people to the cover letter, sorry for the
noise.
I've been putting a lot of effort lately into cleaning up our EDID
parsing. It's been long overdue. Here, we finally leverage all that prep
work to implement the HDMI Forum HF-EEODB extension. In short, HF-EEODB
lets an EDID extension override the number of extensions indicated in
the base block. That has a lot of implications when it comes to EDID
parsing and memory allocation that is currently spread around the
subsystem.
I've added the opaque struct drm_edid in commit e4ccf9a777d3 ("drm/edid:
add struct drm_edid container"). The commit message is worth a
read. Here, I'm expanding struct drm_edid to the interfaces for EDID
reading and parsing. They all get an overhaul, along with the probe
helper .get_modes() hook.
In my mind, there is really no alternative to centralizing the EDID
parsing, and hiding the details in drm_edid.c.
I'm also adding a TODO entry; there's still a bunch of work to be done
across the subsystem.
BR,
Jani.
Cc: Adam Jackson <ajax@redhat.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Andrzej Hajda <andrzej.hajda@intel.com>
Cc: Ben Skeggs <bskeggs@redhat.com>
Cc: Christian König <christian.koenig@amd.com>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Dave Airlie <airlied@redhat.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Karol Herbst <kherbst@redhat.com>
Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com>
Cc: Lyude Paul <lyude@redhat.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Robert Foss <robert.foss@linaro.org>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Xinhui Pan <Xinhui.Pan@amd.com>
Cc: amd-gfx@lists.freedesktop.org
Cc: nouveau@lists.freedesktop.org
Jani Nikula (13):
drm/edid: add block count and data helper functions for drm_edid
drm/edid: keep track of alloc size in drm_do_get_edid()
drm/edid: add new interfaces around struct drm_edid
drm/edid: add drm_edid_connector_update()
drm/probe-helper: abstract .get_modes() connector helper call
drm/probe-helper: make .get_modes() optional, add default action
drm/probe-helper: add .get_edid() callback
drm/edid: add drm_edid_raw() to access the raw EDID data
drm/i915/edid: convert DP, HDMI and LVDS to drm_edid
drm/edid: do invalid block filtering in-place
drm/edid: add HF-EEODB support to EDID read and allocation
drm/edid: take HF-EEODB extension count into account
drm/todo: add entry for converting the subsystem to struct drm_edid
Documentation/gpu/todo.rst | 25 +
drivers/gpu/drm/drm_connector.c | 2 +
drivers/gpu/drm/drm_edid.c | 538 ++++++++++++++++--
drivers/gpu/drm/drm_probe_helper.c | 48 +-
.../gpu/drm/i915/display/intel_connector.c | 4 +-
.../drm/i915/display/intel_display_types.h | 4 +-
drivers/gpu/drm/i915/display/intel_dp.c | 72 +--
drivers/gpu/drm/i915/display/intel_hdmi.c | 26 +-
drivers/gpu/drm/i915/display/intel_lvds.c | 35 +-
include/drm/drm_edid.h | 12 +
include/drm/drm_modeset_helper_vtables.h | 19 +
11 files changed, 650 insertions(+), 135 deletions(-)
--
2.30.2
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-05-24 13:05 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-24 10:39 [PATCH v1 00/13] drm/edid: expand on struct drm_edid usage Jani Nikula
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox