[igt-dev] [PATCH i-g-t] tests/psr: Skip if PSR cannot be enabled for the current mode.

Dhinakaran Pandiyan dhinakaran.pandiyan at intel.com
Wed Aug 1 21:17:48 UTC 2018


On Wed, 2018-08-01 at 20:03 +0000, Souza, Jose wrote:
> On Tue, 2018-07-31 at 23:43 -0700, Dhinakaran Pandiyan wrote:
> > PSR tests on ICL fail waiting for PSR to become active, whereas the
> > driver does not enable it on the HW due to unmet timing
> > requirements
> > [  482.485873] [drm:intel_dp_compute_config [i915]] PSR condition
> > failed: PSR setup time (330 us) too long
> > We should probably bring back the kernel patch that programmed an
> > alternate
> > mode, but skip tests for now.
> > 
> > Cc: José Roberto de Souza <jose.souza at intel.com>
> > Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
> > ---
> >  tests/kms_psr.c | 12 +++++++++++-
> >  1 file changed, 11 insertions(+), 1 deletion(-)
> > 
> > diff --git a/tests/kms_psr.c b/tests/kms_psr.c
> > index 218b3960..89118ad4 100644
> > --- a/tests/kms_psr.c
> > +++ b/tests/kms_psr.c
> > @@ -193,11 +193,19 @@ static bool sink_support(data_t *data)
> >  	char buf[512];
> >  
> >  	igt_debugfs_read(data->drm_fd, "i915_edp_psr_status",
> > buf);
> > -
> >  	return data->with_psr_disabled ||
> >  		strstr(buf, "Sink_Support: yes\n");
> >  }
> >  
> > +static bool mode_support(data_t *data)
> > +{
> > +	char buf[512];
> > +
> > +	igt_debugfs_read(data->drm_fd, "i915_edp_psr_status",
> > buf);
> > +	return data->with_psr_disabled ||
> > +		strstr(buf, "Enabled: yes\n");
> > +}
> 
> This could hide bugs in gen <= 9.
This isn't related to gen, it just so happens that the panel on the ICL
machine has a setup time that cannot be met.

But, the patch does hide bugs if the driver does not enable PSR when it
should have.


> 
> > +
> >  static bool psr_wait_entry_if_enabled(data_t *data)
> >  {
> >  	if (data->with_psr_disabled)
> > @@ -422,6 +430,8 @@ int main(int argc, char *argv[])
> >  		drm_intel_bufmgr_gem_enable_reuse(data.bufmgr);
> >  
> >  		display_init(&data);
> > +		igt_require_f(mode_support(&data),
> > +			     "PSR not enabled for current
> > mode\n");
> 
> Why not just require that gen is <= 9 or 10(if it is working in CNL)?
> and leave a TODO.
> 
> >  	}
> >  
> >  	igt_subtest("basic") {


More information about the igt-dev mailing list