[Intel-gfx] [PATCH] drm/i915/display: Allow users to disable PSR2

Ville Syrjälä ville.syrjala at linux.intel.com
Thu Feb 24 13:06:30 UTC 2022


On Thu, Feb 24, 2022 at 01:01:24PM +0000, Souza, Jose wrote:
> On Thu, 2022-02-24 at 12:12 +0200, Ville Syrjälä wrote:
> > On Wed, Feb 23, 2022 at 11:41:03AM -0800, José Roberto de Souza wrote:
> > > Some users are suffering with PSR2 issues that are under debug or
> > > issues that were root caused to panel firmware, to make life of those
> > > users easier here adding a option to disable PSR1 with kernel
> > > parameter.
> > > 
> > > Using the same enable_psr that is current used to turn PSR1 and PSR2
> > > off or on and adding a new value to only disable PSR2.
> > > The previous valid values did not had their behavior changed.
> > > 
> > > Link: https://gitlab.freedesktop.org/drm/intel/-/issues/4951
> > > Cc: Jouni Högander <jouni.hogander at intel.com>
> > > Signed-off-by: José Roberto de Souza <jose.souza at intel.com>
> > > ---
> > >  drivers/gpu/drm/i915/display/intel_psr.c | 4 ++++
> > >  drivers/gpu/drm/i915/i915_params.c       | 2 +-
> > >  2 files changed, 5 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
> > > index 2e0b092f4b6be..fc6b684bb7bec 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > > @@ -100,11 +100,15 @@ static bool psr_global_enabled(struct intel_dp *intel_dp)
> > >  
> > >  static bool psr2_global_enabled(struct intel_dp *intel_dp)
> > >  {
> > > +	struct drm_i915_private *i915 = dp_to_i915(intel_dp);
> > > +
> > >  	switch (intel_dp->psr.debug & I915_PSR_DEBUG_MODE_MASK) {
> > >  	case I915_PSR_DEBUG_DISABLE:
> > >  	case I915_PSR_DEBUG_FORCE_PSR1:
> > >  		return false;
> > >  	default:
> > > +		if (i915->params.enable_psr == 2)
> > > +			return false;
> > >  		return true;
> > >  	}
> > >  }
> > > diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
> > > index eea355c2fc28a..a9b97e6eb3df0 100644
> > > --- a/drivers/gpu/drm/i915/i915_params.c
> > > +++ b/drivers/gpu/drm/i915/i915_params.c
> > > @@ -94,7 +94,7 @@ i915_param_named_unsafe(enable_hangcheck, bool, 0400,
> > >  
> > >  i915_param_named_unsafe(enable_psr, int, 0400,
> > >  	"Enable PSR "
> > > -	"(0=disabled, 1=enabled) "
> > > +	"(0=disabled, 1=enable up to PSR2 if supported, 2=enable up to PSR1) "
> > 
> > That seems very unintuitive. I would just make it 1==PSR1 and 2==PSR2.
> 
> This will break current behavior.

It's a modparam. We routinely break those since they are not meant
to used by normal users as any kind of permanent "make my machine
work" knob.

-- 
Ville Syrjälä
Intel


More information about the Intel-gfx mailing list