public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: "Kazlauskas, Nicholas" <Nicholas.Kazlauskas@amd.com>
To: "Wentland, Harry" <Harry.Wentland@amd.com>,
	"igt-dev@lists.freedesktop.org" <igt-dev@lists.freedesktop.org>
Subject: Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
Date: Fri, 30 Nov 2018 13:35:34 +0000	[thread overview]
Message-ID: <7b224a09-1559-6210-e4e5-19927e24caa8@amd.com> (raw)
In-Reply-To: <a053f23f-46a5-e928-2eaf-4f6f0bdf1c16@amd.com>

On 11/29/18 4:48 PM, Wentland, Harry wrote:
> 
> 
> On 2018-11-28 9:56 a.m., Nicholas Kazlauskas wrote:
>> The per-pipe plane position subtests are capable of running on
>> AMDGPU as long as they're not using i915 specific tiling formats.
>>
>> The test setup already supports being invoked with different tiling
>> modes so this patch introduces the new 'tiled-none' subtest that runs
>> without any tiling.
>>
>> The tiled-none tests are skipped on i915 to retain existing test
>> coverage and behavior on i915.
>>
>> v2: Use igt_display_has_format_mod helpers (Ville)
>>
>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>> ---
>>   tests/kms_plane_multiple.c | 25 ++++++++++++++++++-------
>>   1 file changed, 18 insertions(+), 7 deletions(-)
>>
>> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
>> index 721afe59..e67e21a5 100644
>> --- a/tests/kms_plane_multiple.c
>> +++ b/tests/kms_plane_multiple.c
>> @@ -157,6 +157,10 @@ create_fb_for_mode_position(data_t *data, igt_output_t *output, drmModeModeInfo
>>   
>>   	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>>   
>> +	igt_skip_on(!igt_display_has_format_mod(&data->display,
>> +						DRM_FORMAT_XRGB8888,
>> +						tiling));
>> +
>>   	fb_id = igt_create_fb(data->drm_fd,
>>   			      mode->hdisplay, mode->vdisplay,
>>   			      DRM_FORMAT_XRGB8888,
>> @@ -210,6 +214,8 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>>   	y[primary->index] = 0;
>>   	for (i = 0; i < max_planes; i++) {
>>   		igt_plane_t *plane = igt_output_get_plane(output, i);
>> +		uint32_t plane_format;
>> +		uint64_t plane_tiling;
>>   
>>   		if (plane->type == DRM_PLANE_TYPE_PRIMARY)
>>   			continue;
>> @@ -223,10 +229,16 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>>   
>>   		data->plane[i] = plane;
>>   
>> +		plane_format = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888;
>> +		plane_tiling = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling;
>> +
>> +		igt_skip_on(!igt_plane_has_format_mod(plane, plane_format,
>> +						      plane_tiling));
>> +
>>   		igt_create_color_fb(data->drm_fd,
>>   				    size[i], size[i],
>> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888,
>> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling,
>> +				    plane_format,
>> +				    plane_tiling,
>>   				    color->red, color->green, color->blue,
>>   				    &data->fb[i]);
>>   
>> @@ -291,13 +303,8 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
>>   {
>>   	igt_output_t *output;
>>   	int connected_outs;
>> -	int devid = intel_get_drm_devid(data->drm_fd);
>>   	int n_planes = data->display.pipes[pipe].n_planes;
>>   
>> -	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
>> -	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
>> -		igt_require(AT_LEAST_GEN(devid, 9));
>> -
> 
> Should we leave this hunk as-is since we only do tiling-none on non-i915 for now?
> 
> Not sure what the implications are of taking this check out.
> 
> Harry

This is the common implementation for the other tests as well as you can 
see below:

test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
...
test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
...

Within those helpers is the intel_get_drm_devid - it fails the test when 
the drm_fd isn't i915.

The igt_plane_has_format_mod/igt_display_has_format_mod helpers take 
care of this check correctly (later in the test) since i915 does support 
IN_FORMATS.

This is the same case for the other patches in the series where I 
removed these checks and replaced them with the helpers.

Nicholas Kazlauskas

> 
>>   	if (!opt.user_seed)
>>   		opt.seed = time(NULL);
>>   
>> @@ -344,6 +351,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>>   	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
>>   		for_each_valid_output_on_pipe(&data->display, pipe, output)
>>   			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
>> +
>> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
>> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
>> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
>>   }
>>   
>>   static data_t data;
>>

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

  reply	other threads:[~2018-11-30 13:35 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-28 14:56 [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Nicholas Kazlauskas
2018-11-28 14:56 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
2018-11-29 21:48   ` Wentland, Harry
2018-11-30 13:35     ` Kazlauskas, Nicholas [this message]
2018-11-30 13:55   ` Ville Syrjälä
2018-11-30 13:57     ` Kazlauskas, Nicholas
2018-11-28 14:56 ` [igt-dev] [PATCH i-g-t 3/4] tests/kms_plane_lowres: Don't fail tests when missing format/mod support Nicholas Kazlauskas
2018-11-29 21:53   ` Wentland, Harry
2018-11-30 13:56   ` Ville Syrjälä
2018-11-30 13:59     ` Kazlauskas, Nicholas
2018-11-28 14:56 ` [igt-dev] [PATCH i-g-t 4/4] tests: Enable plane tests for AMDGPU Nicholas Kazlauskas
2018-11-29 21:54   ` Wentland, Harry
2018-11-28 16:22 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Patchwork
2018-11-30 13:51 ` [igt-dev] [PATCH i-g-t 1/4] " Ville Syrjälä
2018-11-30 13:55   ` Kazlauskas, Nicholas
  -- strict thread matches above, loose matches on Subject: below --
2018-11-13 15:23 Nicholas Kazlauskas
2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
2018-11-13 16:58   ` Ville Syrjälä
2018-11-13 17:02     ` Kazlauskas, Nicholas
2018-11-13 17:15       ` Ville Syrjälä
2018-11-27 18:36         ` Kazlauskas, Nicholas
2018-11-27 19:00           ` Ville Syrjälä

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7b224a09-1559-6210-e4e5-19927e24caa8@amd.com \
    --to=nicholas.kazlauskas@amd.com \
    --cc=Harry.Wentland@amd.com \
    --cc=igt-dev@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox