[igt-dev] [PATCH i-g-t] kms_psr2_su: Skip page-flip tests if FB_DAMAGE_CLIPS not supported

Hogander, Jouni jouni.hogander at intel.com
Tue Apr 26 14:25:36 UTC 2022


On Tue, 2022-04-26 at 13:38 +0000, Souza, Jose wrote:
> On Tue, 2022-04-26 at 13:31 +0000, Hogander, Jouni wrote:
> > On Tue, 2022-04-26 at 13:08 +0000, Souza, Jose wrote:
> > > On Tue, 2022-04-26 at 05:23 +0000, Hogander, Jouni wrote:
> > > > On Mon, 2022-04-25 at 13:36 +0000, Souza, Jose wrote:
> > > > > On Fri, 2022-04-22 at 09:02 +0300, Jouni Högander wrote:
> > > > > > Currently we are seeing failures in ICL platforms due to
> > > > > > missing support for IGT_PLANE_FB_DAMAGE_CLIPS. Skip page-
> > > > > > flip
> > > > > > tests if IGT_PLANE_FB_DAMAGE_CLIPS is not supported.
> > > > > 
> > > > > It should skip this whole test test in display <= 11
> > 
> > Why should it skip frontbuffer subtests? We have them passing:
> > 
> > https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11549/shard-iclb2/igt@kms_psr2_su@frontbuffer-xrgb8888.html
> > 
> > The bug referenced here is about page_flip failing due to missing
> > support for FB_DAMAGE_CLIPS. The fix I'm proposing is to check
> > whether FB_DAMAGE_CLIPS is supported and skip page_flip subtests if
> > it's not. It's logical to my opinion, because page_flip subtests
> > are
> > relying on FB_DAMAGE_CLIPS.
> > 
> 
> Sorry mixed up kms_psr2_su with kms_psr2_sf.
> 
> So kms_psr2_su only depends on damage_clips when selective fetch is
> enabled, so instead of skip when damage_clips is not available it
> should just not
> send the damage_clips.

Ok, I will try this out.

> 
> For ICL and older it will use the PSR2 HW tracking and will update
> the register with the number of blocks that was sent to the panel.
> 
> > > > 
> > > > Yes, I considered this one as well. I just thought it would be
> > > > better
> > > > to check possible support for FB_DAMAGE_CLIPS (which doesn't
> > > > exist
> > > > for
> > > > "<= 11" either) rather than add one more platform check into
> > > > igt.
> > > > This
> > > > is basically what the problem in
> > > > https://gitlab.freedesktop.org/drm/intel/-/issues/4148 is. We
> > > > try
> > > > to
> > > > run this test on platform not supporting FB_DAMAGE_CLIPS.
> > > > 
> > > > drivers/gpu/drm/i915/display/skl_universal_plane.c:
> > > > 
> > > >         if (DISPLAY_VER(dev_priv) >= 12)
> > > >                 drm_plane_enable_fb_damage_clips(&plane->base);
> > > 
> > > I'm fine in using the damage clip property check but the check
> > > should
> > > skip the whole test not only when operation is PAGE_FLIP.
> > > 
> > > > What do you think?
> > > > 
> > > > > > Closes: 
> > > > > > https://gitlab.freedesktop.org/drm/intel/-/issues/4148
> > > > > > 
> > > > > > Signed-off-by: Jouni Högander <jouni.hogander at intel.com>
> > > > > > Cc: Petri Latvala <petri.latvala at intel.com>
> > > > > > Cc: José Roberto de Souza <jose.souza at intel.com>
> > > > > > ---
> > > > > >  tests/i915/kms_psr2_su.c | 7 +++++++
> > > > > >  1 file changed, 7 insertions(+)
> > > > > > 
> > > > > > diff --git a/tests/i915/kms_psr2_su.c
> > > > > > b/tests/i915/kms_psr2_su.c
> > > > > > index 474b1dfd..0ce1f924 100644
> > > > > > --- a/tests/i915/kms_psr2_su.c
> > > > > > +++ b/tests/i915/kms_psr2_su.c
> > > > > > @@ -322,6 +322,13 @@ igt_main
> > > > > >   */
> > > > > >  igt_skip("PSR2 selective fetch is doing full frame fetches
> > > > > > for
> > > > > > frontbuffer rendering\n");
> > > > > >  }
> > > > > > +if (data.op == PAGE_FLIP &&
> > > > > > +    !igt_plane_has_prop(igt_output_get_plane_type(
> > > > > > +data.output,
> > > > > > +DRM_PLANE_TYPE_PRIMARY),
> > > > > > +IGT_PLANE_FB_DAMAGE_CLIPS)) {
> > > > > > +igt_skip("FB_DAMAGE_CLIPS not supported\n");
> > > > > > +}
> > > > > >  prepare(&data);
> > > > > >  run(&data);
> > > > > >  cleanup(&data);



More information about the igt-dev mailing list