[igt-dev] [PATCH i-g-t v2] tests/kms_rotation_crc: Remove hardcoding of platforms in igt_require()

Ville Syrjälä ville.syrjala at linux.intel.com
Mon Mar 12 15:22:27 UTC 2018


On Mon, Mar 12, 2018 at 04:09:06PM +0100, Maarten Lankhorst wrote:
> Op 12-03-18 om 15:23 schreef Ville Syrjälä:
> > On Mon, Mar 12, 2018 at 12:03:17PM +0100, Maarten Lankhorst wrote:
> >> Op 09-03-18 om 22:45 schreef Radhakrishna Sripada:
> >>> From: Anusha Srivatsa <anusha.srivatsa at intel.com>
> >>>
> >>> Rework the rotate and reflect subtests by checking the
> >>> crtc supported properties against the ones that the
> >>> test is testing. Remove the hardcoded platform names in
> >>> igt_require()
> >>>
> >>> v2: Make use of the property enums to get the supported rotations
> >>>
> >>> Cc: Radhakrishna Sripada <radhakrishna.sripada at intel.com>
> >>> Cc: Daniel Vetter <daniel.vetter at intel.com>
> >>> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> >>> Cc: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> >>> Cc: Mika Kahola <mika.kahola at intel.com>
> >>> Cc: Manasi Navare <manasi.d.navare at intel.com>
> >>> Signed-off-by: Anusha Srivatsa <anusha.srivatsa at intel.com>
> >>> Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada at intel.com>
> >>> ---
> >>>  lib/igt_kms.h            |  1 +
> >>>  tests/kms_rotation_crc.c | 46 +++++++++++++++++++++++++++++++++++++---------
> >>>  2 files changed, 38 insertions(+), 9 deletions(-)
> >> Just let it rest, it's not worth the effort to remove this, you only end up with more complicated code..
> >> Closest I've come is below. Which will still fail because it will try to generate the wrong tilings pre-gen9..
> > The current code is actually wrong. chv doesn't require X-tiling for
> > reflection.
> >
> > I think the actual hardware restrictions we have are:
> > gen4+: 0/180 degree rotation supported always
> > chv: supports reflection, except with 180 degree rotation
> > gen9+: 90/270 degree rotation supported with y/yf tiling
> > gen10+: supports reflection, except with linear fb
> So can we leave it the way it is now?

Maybe. I don't really know what we're trying to test here. Someone
should probably remove the bogus x-tiling check from chv at least.

Perhaps the best solution would be to make it as generic as possible
by checking the plane supported rotations, while still keeoing the
manual checks for the few exceptions I listed above. Might even be
nice to put the generic stuff into something like
igt_plane_has_rotation(). And maybe the exceptions should be there
as well?

-- 
Ville Syrjälä
Intel OTC


More information about the igt-dev mailing list