Re: [PATCH i-g-t] tests/kms_frontbuffer_tracking: Skip tests when PSR cannot be enabled

Rodrigo Vivi
2017-10-26T19:32:59Z

On Thu, Oct 26, 2017 at 01:29:57PM +0000, Paulo Zanoni wrote:
> Em Qua, 2017-10-25 às 17:37 -0700, Dhinakaran Pandiyan escreveu:
> > The frontbuffer_tracking PSR tests fail if PSR cannot be activated
> > when
> > there is sink support. But, there are several other requirements
> > related to
> > mode timings that have to be satisfied before PSR can be enabled. No
> > reason
> > to fail these tests when PSR cannot be enabled.
> >
> > Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> > ---
> >  tests/kms_frontbuffer_tracking.c | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/tests/kms_frontbuffer_tracking.c
> > b/tests/kms_frontbuffer_tracking.c
> > index a068c8af..13c948de 100644
> > --- a/tests/kms_frontbuffer_tracking.c
> > +++ b/tests/kms_frontbuffer_tracking.c
> > @@ -1548,12 +1548,12 @@ static void teardown_fbc(void)
> >  {
> >  }
> >
> > -static bool psr_sink_has_support(void)
> > +static bool psr_has_support(void)
> >  {
> >   char buf[256];
> >
> >   debugfs_read("i915_edp_psr_status", buf);
> > - return strstr(buf, "Sink_Support: yes\n");
> > + return strstr(buf, "Enabled: yes\n");
>
> What if PSR can be enabled but is just not enabled due to a bug?

then psr basic should be the one failing...

>
> I suppose we could print on debugfs whether source+sink support equals
> yes.

or maybe here instead of sink: yes or enable: yes
we could check
sink: yes && source: yes

if sink yes and source yes and psr is still disabled when we
expect that enabled than we have the bug paulo mentioned.

>
> >  }
> >
> >  static void setup_psr(void)
> > @@ -1564,8 +1564,8 @@ static void setup_psr(void)
> >   return;
> >   }
> >
> > - if (!psr_sink_has_support()) {
> > - igt_info("Can't test PSR: not supported by
> > sink.\n");
> > + if (!psr_has_support()) {
> > + igt_info("Can't test PSR: not supported.\n");
> >   return;
> >   }
> >   psr.can_test = true;