On Fri, 17 Dec 2021, Ville Syrjala <ville.syrjala@xxxxxxxxxxxxxxx> wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > CHV is currently straddling the divide by using parse_ddi_ports() stuff > for aux_ch/ddc_pin but going through all old codepaths for the rest > (intel_bios_is_port_present(), intel_bios_is_port_edp(), > intel_bios_is_port_dp_dual_mode()). Let's switch over full and use > i915->vbt.ports[] for the rest of the stuff. > > dvo_port_to_port() doesn't know about DSI so we won't get into > any kind of "is port B HDMI or DSI or both?" conundrum, which > could otherwise happen on VLV/CHV due to DSI ports living in a > separate world from the other digital ports. This is also very subtle! But it does somewhat nicely dodge the whole question, and moves things forward. > > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_bios.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c > index fce1ea7a6693..b7adea9827c3 100644 > --- a/drivers/gpu/drm/i915/display/intel_bios.c > +++ b/drivers/gpu/drm/i915/display/intel_bios.c > @@ -2075,14 +2075,14 @@ static void parse_ddi_port(struct drm_i915_private *i915, > > static bool has_ddi_port_info(struct drm_i915_private *i915) > { > - return HAS_DDI(i915); > + return HAS_DDI(i915) || IS_CHERRYVIEW(i915); > } > > static void parse_ddi_ports(struct drm_i915_private *i915) > { > struct intel_bios_encoder_data *devdata; > > - if (!HAS_DDI(i915) && !IS_CHERRYVIEW(i915)) > + if (!has_ddi_port_info(i915)) > return; > > if (i915->vbt.version < 155) -- Jani Nikula, Intel Open Source Graphics Center