On Tue, 05 Apr 2022, Ville Syrjala <ville.syrjala@xxxxxxxxxxxxxxx> wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > Just assume panel_type==0 always if the VBT gives us bogus data. > We actually already do this everywhere else except in > parse_panel_options() since we just leave i915->vbt.panel_type > zeroed. This also seems to be what Windows does. > > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_bios.c | 11 ++++++----- > 1 file changed, 6 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c > index 01e0b12e2dea..502d4c679198 100644 > --- a/drivers/gpu/drm/i915/display/intel_bios.c > +++ b/drivers/gpu/drm/i915/display/intel_bios.c > @@ -613,13 +613,14 @@ parse_panel_options(struct drm_i915_private *i915) > } else { > if (lvds_options->panel_type > 0xf) { > drm_dbg_kms(&i915->drm, > - "Invalid VBT panel type 0x%x\n", > + "Invalid VBT panel type 0x%x, assuming 0\n", > lvds_options->panel_type); > - return; > + panel_type = 0; > + } else { > + panel_type = lvds_options->panel_type; > + drm_dbg_kms(&i915->drm, "Panel type: %d (VBT)\n", > + panel_type); > } > - panel_type = lvds_options->panel_type; > - drm_dbg_kms(&i915->drm, "Panel type: %d (VBT)\n", > - panel_type); > } > > i915->vbt.panel_type = panel_type; -- Jani Nikula, Intel Open Source Graphics Center