[igt-dev] [PATCH i-g-t] tests/kms_plane_scaling: Add test to validate max source size

Luca Coelho luca at coelho.fi
Fri Dec 30 10:31:36 UTC 2022


On Fri, 2022-12-23 at 15:57 +0530, Swati Sharma wrote:
> > From: Swati2 Sharma <swati2.sharma at intel.com>
> > 
> > Test is added for i915 devices to validate max source size.
> > This test is expected to pass for platforms having
> > 11 <= display ver < 14 since for these platforms max source
> > size supported is 5120.

This is not entirely true, as we discussed.  For display_ver <= 11, the
maximum source and destination sizes are 4K for both width and height.


> >  For remaining platforms this test is
> > expected to fail since max source size supported is 4096.

Maybe it's better to specify the actual values for each platform here
(and in a comment in the code).  For the record, these are the values
as we discussed:

Before Display Version 11:	Max Source Width:  4K
				Max Source Height: 4K
				Max Dest. Width:   4K
				Max Dest. Height:  4K

Display Version 11:		Max Source Width:  5K
				Max Source Height: 4K

				Max Dest. Width:   5K
				Max Dest. Height:  4K


Display Versions 12-13:		Max Source Width:  5K
				Max Source Height: 8K

				Max Dest. Width:   8K
				Max Dest. Height:  8K

Display Version 14+:		Max Source Width:  4K
				Max Source Height: 8K
				Max Dest. Width:   8K
				Max Dest. Height:  8K


> > In this test, we are creating 4k fb and trying to upscale it to
> > 5k on a 5k monitor. Platforms having max source size of 5120
> > will be able to do it, and for remaining platforms its expected
> > to get -EINVAL.
> > 
> > Signed-off-by: Swati2 Sharma <swati2.sharma at intel.com>
> > ---
> >  tests/kms_plane_scaling.c | 64
> > +++++++++++++++++++++++++++++++++++++++
> >  1 file changed, 64 insertions(+)
> > 
> > diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
> > index 4c621cce..170e8c28 100644
> > --- a/tests/kms_plane_scaling.c
> > +++ b/tests/kms_plane_scaling.c

[...]


> > @@ -970,6 +1015,25 @@ igt_main_args("", long_opts, help_str,
> > opt_handler, &data)
> >  			}
> >  		}
> >  
> > +		igt_fixture
> > +			igt_require_f(data.devid, "This test is
> > valid only for i915 devices\n");
> > +
> > +		igt_describe("Test for max source size.");
> > +		igt_subtest_with_dynamic("max-source-size") {
> > +			for_each_pipe_with_valid_output(&data.disp
> > lay, pipe, output) {
> > +					drmModeModeInfo *mode;
> > +
> > +					mode =
> > igt_output_get_mode(output);
> > +
> > +					if (mode->hdisplay <
> > HDISPLAY_5K)
> > +						continue;

For the record, I discussed this with you (Swati) and there was a
misinterpretation of the HAS.  It says "4kto5k->5kto8k not supported"
and it was interpreted as if 4k source to 5k destination is not
possible, but in fact it means "from anything between 4K to 5K 
(source) to anything between 5K and 8K (destination) is not supported".

Swati said she's going to update the tests accordingly and send a new
version of this patch.

--
Cheers,
Luca.



More information about the igt-dev mailing list