RFC drm: facilitate driver unification around edid read and override
Get series with b4
b4 am [email protected]Versions newest first
- v1 RFC Latest7 patches 7 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/7 | drm: reset ELD if NULL edid is passed to drm_edid_to_elddrivers/ | +3 | 0 replies | |
| 2/7 | drm: move edid property update and add modes out of edid firmware loaderdrivers/ drivers/ include/ | +15 | 0 replies | |
| 3/7 | drm: abstract override and firmware ediddrivers/ | +28 | 0 replies | |
| 4/7 | drm: export load edid firmwaredrivers/ | +1 | 0 replies | |
| 5/7 | drm: make drm_get_displayid() available outside of drm_edid.cdrivers/ include/ | +3 | 0 replies | |
| 6/7 | drm: add new drm_mode_connector_get_edid to do drm_get_edid and friendsdrivers/ drivers/ include/ | +73 | 3 replies | |
| 7/7 | drm/i915: replace intel_ddc_get_modes with drm_mode_connector_get_ediddrivers/ drivers/ drivers/ +1 more | +4 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [RFC PATCH 0/7] drm: facilitate driver unification around edid read and override
Hi all -
This series aims at three goals:
1) Most drivers do similar things around drm_get_edid (namely convert edid to eld, add modes, and update edid blob property). Add a helper for the drivers, to reduce code and unify.
2) Move override and firmware EDID handling to a lower level, in the helper. This makes them more transparent to the rest of the stack, avoiding special casing. For example, any drm_detect_hdmi_monitor calls typically use the EDID from the display, not the override EDID.
3) Make EDID caching easier and unified across drivers. Currently, plenty of drivers have their own hacks for caching EDID reads. This could be made more transparent and unified at the helper level.
All of this is opt-in, using the helper from patch 6/7. This is mostly because converting everything at one go is pretty much impossible. The main wrinkle is having to leave override/firmware EDID handling in two places for now, but this could be fixed once enough drivers have switched to using the common helper.
BR,
Jani.
Jani Nikula (7):
drm: reset ELD if NULL edid is passed to drm_edid_to_eld
drm: move edid property update and add modes out of edid firmware
loader
drm: abstract override and firmware edid
drm: export load edid firmware
drm: make drm_get_displayid() available outside of drm_edid.c
drm: add new drm_mode_connector_get_edid to do drm_get_edid and
friends
drm/i915: replace intel_ddc_get_modes with drm_mode_connector_get_edid
drivers/gpu/drm/drm_connector.c | 60 ++++++++++++++++++++++++++++++++++++++ drivers/gpu/drm/drm_edid.c | 10 +++---- drivers/gpu/drm/drm_edid_load.c | 18 ++++-------- drivers/gpu/drm/drm_probe_helper.c | 45 +++++++++++++++++++++------- drivers/gpu/drm/i915/intel_drv.h | 1 - drivers/gpu/drm/i915/intel_dvo.c | 5 ++-- drivers/gpu/drm/i915/intel_modes.c | 23 --------------- drivers/gpu/drm/i915/intel_sdvo.c | 2 +- include/drm/drm_connector.h | 6 ++++ include/drm/drm_edid.h | 8 +++-- 10 files changed, 120 insertions(+), 58 deletions(-)
Signature · 6 lines
2.1.4 _______________________________________________ dri-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/dri-devel