On Wed, 08 Feb 2023, Ville Syrjala <ville.syrjala@xxxxxxxxxxxxxxx> wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > We need to get rid of the vbt.ports[] array. The main > reason being the bogus VBTs found on many ADL laptops > that declare both eDP+HDMI child devices for the same > port. The goal is to probe each of those in order and > stick to the first one that works. But the vbt.ports[] > array gets populated before we do any output probing > and, being indexed with the port, can't handle any > aliasing child devices. > > Here's a bit of prep work to reduce our reliance on > vbt.ports[], mainly by expanding the encoder->devdata > (a direct pointer to the correct vbt child device from > the encoder) usage. On the series, Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx> with some nitpicks on commit messages. > > Ville Syrjälä (10): > drm/i915: Pass the whole encoder to hotplug_enables() > drm/i915: Move variables to loop context > drm/i915: Replace intel_bios_is_lspcon_present() with > intel_bios_encoder_is_lspcon() > drm/i915: Replace intel_bios_is_lane_reversal_needed() with > intel_bios_encoder_lane_reversal() > drm/i915: Replace intel_bios_is_port_hpd_inverted() with > intel_bios_encoder_hpd_invert() > drm/i915: Consult the registested encoders for the ICL combo PHY w/a > drm/i915: Populate encoder->devdata for g4x+ DP/HDMI ports > drm/i915: Pass devdata to intel_bios_port_aux_ch() > drm/i915: Iterate all child devs in intel_bios_is_port_present() > drm/i915: Use encoder->devdata in eDP init > > drivers/gpu/drm/i915/display/g4x_dp.c | 12 +- > drivers/gpu/drm/i915/display/g4x_hdmi.c | 12 +- > drivers/gpu/drm/i915/display/intel_bios.c | 128 ++++++------------ > drivers/gpu/drm/i915/display/intel_bios.h | 14 +- > drivers/gpu/drm/i915/display/intel_ddi.c | 6 +- > .../i915/display/intel_display_power_well.c | 15 +- > drivers/gpu/drm/i915/display/intel_dp.c | 30 ++-- > drivers/gpu/drm/i915/display/intel_hdmi.c | 2 +- > drivers/gpu/drm/i915/display/intel_lspcon.c | 2 +- > drivers/gpu/drm/i915/i915_irq.c | 59 ++++---- > 10 files changed, 134 insertions(+), 146 deletions(-) -- Jani Nikula, Intel Open Source Graphics Center