[Intel-gfx] [PATCH v2 00/18] drm/i915: Init DDI ports in VBT order
Ville Syrjala
ville.syrjala at linux.intel.com
Mon Feb 20 23:40:28 UTC 2023
From: Ville Syrjälä <ville.syrjala at linux.intel.com>
I just wanted to init DDI ports in VBT child device order
without any up front assumptions about which conflicting
child device defition is valid. That is pretty much what
we need to do for the ADL laptops with the phantom eDP vs.
native HDMI on DDI B.
However that approach doesn't work for some of the weird
SKL boards that have a phantom eDP on DDI A+AUX A and
and a real DP->VGA converter on DDI E+AUX A. For those
I had to introduce HPD live status check during eDP init.
One of the remaining concerns I still have is what happens
when we encounter VBTs with more AUX CH/DDC pin conflicts?
I think what we might want to do eventually is ignore the
conflicts as much as possible, and just init everything
based on VBT, trusting HPD to take care of things in the
end. That of course does have certain issues wrt. connector
forcing, but dunno if we can avoid those at all.
Also I think we need to nuke all the platform default AUX
CH/DDC pin stuff, or at least only try to utilize those
only once we've consumed the VBT fully.
v2: Fix SKL DDI A HPD live state
Ville Syrjälä (18):
drm/i915: Populate dig_port->connected() before connector init
drm/i915: Fix SKL DDI A digital port .connected()
drm/i915: Get rid of the gm45 HPD live state nonsense
drm/i915: Introduce <platoform>_hotplug_mask()
drm/i915: Introduce intel_hpd_detection()
drm/i915: Check HPD live state during eDP probe
drm/i915: Sanitize child devices later
drm/i915: Split map_aux_ch() into per-platform arrays
drm/i915: Flip VBT DDC pin maps around
drm/i915: Nuke intel_bios_is_port_dp_dual_mode()
drm/i915: Remove bogus DDI-F from hsw/bdw output init
drm/i915: Introduce device info port_mask
drm/i915: Assert that device info bitmasks have enough bits
drm/i915: Assert that the port being initialized is valid
drm/i915: Beef up SDVO/HDMI port checks
drm/i915: Init DDI outputs based on port_mask on skl+
drm/i915: Try to initialize DDI/ICL+ DSI ports for every VBT child
device
drm/i915: Convert HSW/BDW to use VBT driven DDI probe
drivers/gpu/drm/i915/display/g4x_dp.c | 34 +-
drivers/gpu/drm/i915/display/g4x_hdmi.c | 23 +-
drivers/gpu/drm/i915/display/icl_dsi.c | 11 +-
drivers/gpu/drm/i915/display/icl_dsi.h | 6 +-
drivers/gpu/drm/i915/display/intel_bios.c | 380 ++++++++++--------
drivers/gpu/drm/i915/display/intel_bios.h | 12 +-
drivers/gpu/drm/i915/display/intel_crt.c | 2 +
drivers/gpu/drm/i915/display/intel_ddi.c | 131 ++++--
drivers/gpu/drm/i915/display/intel_ddi.h | 5 +-
drivers/gpu/drm/i915/display/intel_display.c | 89 +---
drivers/gpu/drm/i915/display/intel_display.h | 2 +
.../gpu/drm/i915/display/intel_display_core.h | 2 -
drivers/gpu/drm/i915/display/intel_dp.c | 28 ++
drivers/gpu/drm/i915/display/intel_dvo.c | 2 +
drivers/gpu/drm/i915/display/intel_hdmi.c | 6 +-
drivers/gpu/drm/i915/display/intel_sdvo.c | 20 +-
drivers/gpu/drm/i915/i915_irq.c | 365 +++++++++++++----
drivers/gpu/drm/i915/i915_irq.h | 2 +
drivers/gpu/drm/i915/i915_pci.c | 31 ++
drivers/gpu/drm/i915/i915_reg.h | 13 +-
drivers/gpu/drm/i915/intel_device_info.c | 9 +
drivers/gpu/drm/i915/intel_device_info.h | 1 +
22 files changed, 761 insertions(+), 413 deletions(-)
--
2.39.2
More information about the Intel-gfx
mailing list