[Intel-gfx] [PATCH v2 11/11] drm/i915: Allow static DRRS on LVDS

Ville Syrjälä ville.syrjala at linux.intel.com
Fri Apr 1 15:09:38 UTC 2022


On Thu, Mar 31, 2022 at 05:05:31PM +0300, Ville Syrjälä wrote:
> On Thu, Mar 31, 2022 at 04:59:11PM +0300, Jani Nikula wrote:
> > On Thu, 31 Mar 2022, Ville Syrjala <ville.syrjala at linux.intel.com> wrote:
> > > From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > >
> > > Nothing special about static DRRS on LVDS, it's just your
> > > bog standard modeset. Let's allow it.
> > >
> > > Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > > ---
> > >  drivers/gpu/drm/i915/display/intel_lvds.c | 3 ++-
> > >  1 file changed, 2 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/display/intel_lvds.c b/drivers/gpu/drm/i915/display/intel_lvds.c
> > > index 73129d21f5e5..e8478161f8b9 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_lvds.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_lvds.c
> > > @@ -968,7 +968,8 @@ void intel_lvds_init(struct drm_i915_private *dev_priv)
> > >  	intel_connector->edid = edid;
> > >  
> > >  	/* Try EDID first */
> > > -	intel_panel_add_edid_fixed_modes(intel_connector, false);
> > > +	intel_panel_add_edid_fixed_modes(intel_connector,
> > > +					 dev_priv->vbt.drrs_type != DRRS_TYPE_NONE);
> > 
> > I guess the final question on this, and the previous patch for that
> > matter, is why would the VBT block your regular modeset between two
> > different refresh rates?
> > 
> > It does sound like the VBT setting is more about OEM decided policy than
> > anything else.
> 
> Or just lack of validation.

After staring at a bunch of VBTs from these laptops with high refresh
rate panels it seems some of them do not declare DRRS support at all.
So it looks like the other thing we need to consider here is VRR support.
There's also a newish field in VBT for VRR which seems like something we
need to start looking at (currently we only look at DPCD+EDID for that).

And the even bigger problem is that several of the VBTs have
panel_type=0xff, so looks like we really need to make that PNPID
matching stuff happen :/ Filed a bug to track that one separately
https://gitlab.freedesktop.org/drm/intel/-/issues/5545

-- 
Ville Syrjälä
Intel


More information about the Intel-gfx mailing list