[igt-dev] [PATCH i-g-t] [i-g-t] tests/kms_plane_scaling: Change minimum fb height for YUV 420 planar

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Tue Mar 6 15:39:05 UTC 2018


Op 06-03-18 om 11:15 schreef Srinivas, Vidya:
>
>> -----Original Message-----
>> From: Maarten Lankhorst [mailto:maarten.lankhorst at linux.intel.com]
>> Sent: Tuesday, March 6, 2018 3:23 PM
>> To: Srinivas, Vidya <vidya.srinivas at intel.com>; igt-dev at lists.freedesktop.org
>> Cc: Kamath, Sunil <sunil.kamath at intel.com>; Syrjala, Ville
>> <ville.syrjala at intel.com>; Shankar, Uma <uma.shankar at intel.com>
>> Subject: Re: [PATCH i-g-t] [i-g-t] tests/kms_plane_scaling: Change minimum
>> fb height for YUV 420 planar
>>
>> Op 06-03-18 om 10:21 schreef Vidya Srinivas:
>>> When the plane scaling is used with YUV 420 planar formats, the height
>>> should be a minimum of 16 scanlines as per BSpec Minimum of 8
>>> scanlines is for non-YUV 420 planar formats.
>>> Patch changes the minimum fb height being used in the test in case of
>>> YUV 420 planar (for now NV12 as only that is supported).
>>>
>>> Signed-off-by: Uma Shankar <uma.shankar at intel.com>
>>> Signed-off-by: Vidya Srinivas <vidya.srinivas at intel.com>
>>> ---
>>>  tests/kms_plane_scaling.c | 2 ++
>>>  1 file changed, 2 insertions(+)
>>>
>>> diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
>>> index 4408e5c..cf49015 100644
>>> --- a/tests/kms_plane_scaling.c
>>> +++ b/tests/kms_plane_scaling.c
>>> @@ -131,6 +131,8 @@ static void check_scaling_pipe_plane_rot(data_t
>>> *d, igt_plane_t *plane,
>>>
>>>  	/* create buffer in the range of  min and max source side limit.*/
>>>  	width = height = 9;
>>> +	if (pixel_format == DRM_FORMAT_NV12)
>>> +		height = 16;
>>>  	igt_create_color_fb(display->drm_fd, width, height,
>>>  		       pixel_format, tiling, 0.0, 1.0, 0.0, &d->fb[0]);
>>>  	igt_plane_set_fb(plane, &d->fb[0]);
>> Could we set height to 17 for all?
>>
>> ~Maarten
> Hi Maarten. We can. But since min for non-YUV was 8, we thought
> the purpose of the test was to create the minimal possible buffer.
> So we dint change that. What do you suggest? Please let us know.
>
> Regards
> Vidya
>
Allow igt_create_fb_with_bo_size to fail, but not kms_addfb, then handle its failure in kms_frontbuffer_tracking

and then do something like this:


for (height = 1; height < 1024; height *= 2) {

if (igt_create_fb_with_bo_size(height + 1, height + 1) > 0)

        break;

}

igt_assert(height < 1024);

width = ++height;

This should work regardless of format..

~Maarten



More information about the igt-dev mailing list