Skip to contentSkip to conversation

tests/kms_scaling_modes: New IGT to validate scaling modes

PATCH In review Swati Sharma 3 participants 4 messages Jan 27, 2022 – Jan 28, 2022 Arm/Amlogic Meson SoC support

lore
Share & tools
lore
#0 lore raw

PATCH v4 1/1 tests/kms_scaling_modes: New IGT to validate scaling modes

In this IGT, various scaling modes are validated. Scaling mode is one of the connector properties. This property defines how a non-native mode is upscaled to the native mode of an LCD panel.

There are 4 types of scaling modes defined:
None:
No upscaling happens, scaling is left to the panel. Not all drivers expose this mode.
Full:
The output is upscaled to the full resolution of the panel, ignoring the aspect ratio. It will expand current image to the size of the monitor.
Center:
No upscaling happens, the output is centered within the native resolution the panel. As a result, black bars may appear around the image.
Full aspect:
The output is upscaled to maximize either the width or height while retaining the aspect ratio. It will fill the screen w/o stretching the image. Black bars are placed either on top and bottom or left and right of the picture.

v2: -removed test flags/test_cycle_flags() (JP)
-removed redundant igt_display_commit_atomic() (JP) -corrected indentation (JP)
v3: -removed valid_test check, getting covered in
igt_subtest_with_dynamic() (Bhanu)
-removed redundant if statement, moved remove_fb()
before skip (JP)
v4: -Removed unnecessary headers (JP)
-Corrected usage of igt_dynamic_f() (Bhanu)

---
 tests/kms_scaling_modes.c | 137 ++++++++++++++++++++++++++++++++++++++
 tests/meson.build         |   1 +
 2 files changed, 138 insertions(+)
 create mode 100644 tests/kms_scaling_modes.c
tests/kms_scaling_modes.c new file +137 -0
new file mode 100644
index 00000000..8e80189a
@@ -0,0 +1,137 @@
+/*
+ * Copyright © 2022 Intel Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+ *
+ * Author:
+ *     Swati Sharma <[email protected]>
+ */
+
+#include "igt.h"
+
+IGT_TEST_DESCRIPTION("Test display scaling modes");
+
+/* Common test data */
+typedef struct data {
+	igt_display_t display;
+	int drm_fd;
+} data_t;
+
+static void test_scaling_mode_on_output(igt_display_t *display, const enum pipe pipe,
+					igt_output_t *output, uint32_t flags)
+{
+	igt_plane_t *primary, *sprite;
+	drmModeModeInfo mode;
+	struct igt_fb red, blue;
+	int ret;
+
+	igt_output_set_pipe(output, pipe);
+	mode = *igt_output_get_mode(output);
+
+	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+	sprite = igt_output_get_plane_type(output, DRM_PLANE_TYPE_OVERLAY);
+
+	igt_create_color_fb(display->drm_fd, mode.hdisplay, mode.vdisplay,
+			    DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_NONE,
+			    0.f, 0.f, 1.f, &blue);
+
+	igt_create_color_fb(display->drm_fd, 640, 480,
+			    DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_NONE,
+			    1.f, 0.f, 0.f, &red);
+
+	igt_plane_set_fb(primary, &blue);
+	igt_plane_set_fb(sprite, &red);
+
+	igt_display_try_commit_atomic(display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
+
+	mode.hdisplay = 640;
+	mode.vdisplay = 480;
+	igt_output_override_mode(output, &mode);
+
+	igt_plane_set_fb(sprite, NULL);
+	igt_plane_set_fb(primary, &red);
+
+	igt_output_set_prop_value(output, IGT_CONNECTOR_SCALING_MODE, flags);
+
+	/* Don't pass ALLOW_MODESET with overridden mode, force fastset */
+	ret = igt_display_try_commit_atomic(display, 0, NULL);
+
+	igt_remove_fb(display->drm_fd, &red);
+	igt_remove_fb(display->drm_fd, &blue);
+
+	igt_skip_on_f(ret == -EINVAL, "Scaling mode not supported\n");
+}
+
+/* Returns true if an output supports scaling mode property */
+static bool has_scaling_mode(igt_output_t *output)
+{
+	return igt_output_has_prop(output, IGT_CONNECTOR_SCALING_MODE) &&
+	       igt_output_get_prop(output, IGT_CONNECTOR_SCALING_MODE);
+}
+
+static void test_scaling_mode(data_t *data, uint32_t flags)
+{
+	igt_display_t *display = &data->display;
+	igt_output_t *output;
+	enum pipe pipe;
+
+	for_each_pipe_with_valid_output(display, pipe, output) {
+		if (!has_scaling_mode(output))
+			continue;
+
+		igt_dynamic_f("%s-pipe-%s", output->name, kmstest_pipe_name(pipe))
+			test_scaling_mode_on_output(display, pipe, output, flags);
+
+		igt_display_reset(display);
+	}
+}
+
+igt_main
+{
+	data_t data = {};
+
+	igt_fixture {
+		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
+		igt_require(data.drm_fd >= 0);
+
+		kmstest_set_vt_graphics_mode();
+
+		igt_display_require(&data.display, data.drm_fd);
+		igt_require(data.display.is_atomic);
+
+		igt_display_require_output(&data.display);
+	}
+
+	igt_describe("Tests full display scaling mode");
+	igt_subtest_with_dynamic("scaling-mode-full")
+		test_scaling_mode(&data, DRM_MODE_SCALE_FULLSCREEN);
+	igt_describe("Tests center display scaling mode");
+	igt_subtest_with_dynamic("scaling-mode-center")
+		test_scaling_mode(&data, DRM_MODE_SCALE_CENTER);
+	igt_describe("Tests full aspect display scaling mode");
+	igt_subtest_with_dynamic("scaling-mode-full-aspect")
+		test_scaling_mode(&data, DRM_MODE_SCALE_ASPECT);
+	igt_describe("Tests none display scaling mode (no scaling)");
+	igt_subtest_with_dynamic("scaling-mode-none")
+		test_scaling_mode(&data, DRM_MODE_SCALE_NONE);
+
+	igt_fixture
+		igt_display_fini(&data.display);
+}
tests/meson.build +1 -0
index c14acf99..7003d064 100644
@@ -50,6 +50,7 @@ test_progs = [
 	'kms_properties',
 	'kms_rmfb',
 	'kms_rotation_crc',
+	'kms_scaling_modes',
 	'kms_selftest',
 	'kms_sequence',
 	'kms_setmode',
Signature · 1 line
2.25.1
#1 lore raw

[igt-dev] ✓ Fi.CI.BAT: success for tests/kms_scaling_modes: New IGT to validate scaling modes (rev5)

== Series Details ==

== Series Details ==

Series: tests/kms_scaling_modes: New IGT to validate scaling modes (rev5)
URL : https://patchwork.freedesktop.org/series/98463/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_11149 -> IGTPW_6584
====================================================

Summary
-------

**SUCCESS**

No regressions found.

External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/index.html

Participating hosts (45 -> 41)
------------------------------

Missing (4): fi-ctg-p8600 fi-bsw-cyan fi-bdw-samus fi-hsw-4200u

Known issues
------------

Here are the changes found in IGTPW_6584 that come from known issues:

### IGT changes ###

#### Issues hit ####

* igt@amdgpu/amd_basic@cs-gfx:
- fi-hsw-4770: NOTRUN -> [SKIP][1] ([fdo#109271] / [fdo#109315]) +17 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/fi-hsw-4770/igt@amdgpu/[email protected]

* igt@i915_selftest@live@hangcheck:
- bat-dg1-6: [PASS][2] -> [DMESG-FAIL][3] ([i915#4494] / [i915#4957])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/bat-dg1-6/igt@i915_selftest@[email protected]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/bat-dg1-6/igt@i915_selftest@[email protected]

* igt@kms_flip@basic-flip-vs-wf_vblank@b-vga1:
- fi-bwr-2160: [PASS][4] -> [FAIL][5] ([i915#2122])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/fi-bwr-2160/igt@kms_flip@[email protected]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/fi-bwr-2160/igt@kms_flip@[email protected]

#### Possible fixes ####

* igt@i915_selftest@live@hangcheck:
- fi-hsw-4770: [INCOMPLETE][6] ([i915#4785]) -> [PASS][7]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/fi-hsw-4770/igt@i915_selftest@[email protected]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/fi-hsw-4770/igt@i915_selftest@[email protected]

#### Warnings ####

* igt@i915_selftest@live@hangcheck:
- bat-dg1-5: [DMESG-FAIL][8] ([i915#4957]) -> [DMESG-FAIL][9] ([i915#4494] / [i915#4957])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/bat-dg1-5/igt@i915_selftest@[email protected]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/bat-dg1-5/igt@i915_selftest@[email protected]

* igt@kms_psr@primary_page_flip:
- fi-skl-6600u: [FAIL][10] ([i915#4547]) -> [INCOMPLETE][11] ([i915#4838])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/fi-skl-6600u/igt@kms_psr@primary_page_flip.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/fi-skl-6600u/igt@kms_psr@primary_page_flip.html

{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).

[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
[i915#4547]: https://gitlab.freedesktop.org/drm/intel/issues/4547
[i915#4785]: https://gitlab.freedesktop.org/drm/intel/issues/4785
[i915#4838]: https://gitlab.freedesktop.org/drm/intel/issues/4838
[i915#4897]: https://gitlab.freedesktop.org/drm/intel/issues/4897
[i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957

Build changes
-------------

* CI: CI-20190529 -> None
* IGT: IGT_6336 -> IGTPW_6584

CI-20190529: 20190529
CI_DRM_11149: 626b06cccf398c25e95dc0534ad018193005ad1b @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_6584: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/index.html
IGT_6336: ae2eb9e18bc58a4c45f28cfd80962938198dec3c @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Testlist changes ==

+igt@kms_scaling_modes@scaling-mode-center
+igt@kms_scaling_modes@scaling-mode-full
+igt@kms_scaling_modes@scaling-mode-full-aspect
+igt@kms_scaling_modes@scaling-mode-none

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/index.html

#2 lore raw

[igt-dev] ✗ Fi.CI.IGT: failure for tests/kms_scaling_modes: New IGT to validate scaling modes (rev5)

In reply to Swati Sharma
== Series Details ==

== Series Details ==

Series: tests/kms_scaling_modes: New IGT to validate scaling modes (rev5)
URL : https://patchwork.freedesktop.org/series/98463/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_11149_full -> IGTPW_6584_full
====================================================

Summary
-------

**FAILURE**

Serious unknown changes coming with IGTPW_6584_full absolutely need to be verified manually.

If you think the reported changes have nothing to do with the changes introduced in IGTPW_6584_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI.

External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/index.html

Participating hosts (10 -> 7)
------------------------------

Missing (3): pig-skl-6260u pig-kbl-iris pig-glk-j5005

Possible new issues
-------------------

Here are the unknown changes that may have been introduced in IGTPW_6584_full:

### IGT changes ###

#### Possible regressions ####

* igt@gem_exec_schedule@u-semaphore-resolve:
- shard-tglb: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-tglb6/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb5/igt@[email protected]

* {igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-a} (NEW):
- shard-tglb: NOTRUN -> [SKIP][3] +3 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb1/igt@kms_scaling_modes@[email protected]

* {igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-c} (NEW):
- shard-iclb: NOTRUN -> [SKIP][4] +2 similar issues
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb7/igt@kms_scaling_modes@[email protected]

New tests
---------

New tests have been introduced between CI_DRM_11149_full and IGTPW_6584_full:

### New IGT tests (20) ###

* igt@kms_scaling_modes@scaling-mode-center:
- Statuses : 4 skip(s)
- Exec time: [0.0] s

* igt@kms_scaling_modes@scaling-mode-center@edp-1-pipe-a:
- Statuses : 2 pass(s)
- Exec time: [0.06, 0.08] s

* igt@kms_scaling_modes@scaling-mode-center@edp-1-pipe-b:
- Statuses : 2 pass(s)
- Exec time: [1.19, 1.22] s

* igt@kms_scaling_modes@scaling-mode-center@edp-1-pipe-c:
- Statuses : 2 pass(s)
- Exec time: [1.17, 1.21] s

* igt@kms_scaling_modes@scaling-mode-center@edp-1-pipe-d:
- Statuses : 1 pass(s)
- Exec time: [1.20] s

* igt@kms_scaling_modes@scaling-mode-full:
- Statuses : 4 skip(s)
- Exec time: [0.0] s

* igt@kms_scaling_modes@scaling-mode-full-aspect:
- Statuses : 4 skip(s)
- Exec time: [0.0] s

* igt@kms_scaling_modes@scaling-mode-full-aspect@edp-1-pipe-a:
- Statuses : 2 pass(s)
- Exec time: [0.06, 0.08] s

* igt@kms_scaling_modes@scaling-mode-full-aspect@edp-1-pipe-b:
- Statuses : 2 pass(s)
- Exec time: [1.17, 1.23] s

* igt@kms_scaling_modes@scaling-mode-full-aspect@edp-1-pipe-c:
- Statuses : 2 pass(s)
- Exec time: [1.17, 1.22] s

* igt@kms_scaling_modes@scaling-mode-full-aspect@edp-1-pipe-d:
- Statuses : 1 pass(s)
- Exec time: [1.20] s

* igt@kms_scaling_modes@scaling-mode-full@edp-1-pipe-a:
- Statuses : 2 pass(s)
- Exec time: [0.07, 0.11] s

* igt@kms_scaling_modes@scaling-mode-full@edp-1-pipe-b:
- Statuses : 2 pass(s)
- Exec time: [1.19, 1.22] s

* igt@kms_scaling_modes@scaling-mode-full@edp-1-pipe-c:
- Statuses : 2 pass(s)
- Exec time: [1.17, 1.22] s

* igt@kms_scaling_modes@scaling-mode-full@edp-1-pipe-d:
- Statuses : 1 pass(s)
- Exec time: [1.19] s

* igt@kms_scaling_modes@scaling-mode-none:
- Statuses : 4 skip(s)
- Exec time: [0.0] s

* igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-a:
- Statuses : 2 skip(s)
- Exec time: [0.06, 0.07] s

* igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-b:
- Statuses : 2 skip(s)
- Exec time: [0.01] s

* igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-c:
- Statuses : 2 skip(s)
- Exec time: [0.01] s

* igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-d:
- Statuses : 1 skip(s)
- Exec time: [0.01] s

Known issues
------------

Here are the changes found in IGTPW_6584_full that come from known issues:

### IGT changes ###

#### Issues hit ####

* igt@gem_ctx_persistence@legacy-engines-mixed-process:
- shard-snb: NOTRUN -> [SKIP][5] ([fdo#109271] / [i915#1099])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-snb4/igt@[email protected]

* igt@gem_ctx_persistence@many-contexts:
- shard-tglb: [PASS][6] -> [FAIL][7] ([i915#2410])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-tglb1/igt@[email protected]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb7/igt@[email protected]

* igt@gem_eio@in-flight-suspend:
- shard-kbl: [PASS][8] -> [DMESG-WARN][9] ([i915#180])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-kbl1/igt@[email protected]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl4/igt@[email protected]

* igt@gem_exec_balancer@parallel-out-fence:
- shard-iclb: [PASS][10] -> [SKIP][11] ([i915#4525]) +1 similar issue
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-iclb2/igt@[email protected]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb6/igt@[email protected]

* igt@gem_exec_fair@basic-none-share@rcs0:
- shard-iclb: [PASS][12] -> [FAIL][13] ([i915#2842]) +1 similar issue
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-iclb3/igt@gem_exec_fair@[email protected]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb4/igt@gem_exec_fair@[email protected]

* igt@gem_exec_fair@basic-pace@vcs1:
- shard-iclb: NOTRUN -> [FAIL][14] ([i915#2842])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb2/igt@gem_exec_fair@[email protected]

* igt@gem_exec_fair@basic-pace@vecs0:
- shard-kbl: [PASS][15] -> [FAIL][16] ([i915#2842])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-kbl4/igt@gem_exec_fair@[email protected]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl7/igt@gem_exec_fair@[email protected]

* igt@gem_huc_copy@huc-copy:
- shard-tglb: NOTRUN -> [SKIP][17] ([i915#2190])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb7/igt@[email protected]
- shard-apl: NOTRUN -> [SKIP][18] ([fdo#109271] / [i915#2190])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl1/igt@[email protected]

* igt@gem_lmem_swapping@parallel-random:
- shard-apl: NOTRUN -> [SKIP][19] ([fdo#109271] / [i915#4613]) +2 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl2/igt@[email protected]

* igt@gem_lmem_swapping@parallel-random-verify:
- shard-kbl: NOTRUN -> [SKIP][20] ([fdo#109271] / [i915#4613])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl1/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][21] ([i915#4613])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb6/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][22] ([i915#4613])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb1/igt@[email protected]
- shard-glk: NOTRUN -> [SKIP][23] ([fdo#109271] / [i915#4613])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk2/igt@[email protected]

* igt@gem_pread@exhaustion:
- shard-apl: NOTRUN -> [WARN][24] ([i915#2658])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl8/igt@[email protected]

* igt@gem_pxp@create-regular-buffer:
- shard-tglb: NOTRUN -> [SKIP][25] ([i915#4270]) +3 similar issues
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb2/igt@[email protected]

* igt@gem_pxp@verify-pxp-stale-ctx-execution:
- shard-iclb: NOTRUN -> [SKIP][26] ([i915#4270]) +1 similar issue
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb5/igt@[email protected]

* igt@gem_render_copy@y-tiled-mc-ccs-to-y-tiled-ccs:
- shard-iclb: NOTRUN -> [SKIP][27] ([i915#768])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb8/igt@[email protected]

* igt@gem_softpin@noreloc-s3:
- shard-apl: NOTRUN -> [DMESG-WARN][28] ([i915#180]) +1 similar issue
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl1/igt@[email protected]

* igt@gem_userptr_blits@unsync-unmap:
- shard-iclb: NOTRUN -> [SKIP][29] ([i915#3297]) +1 similar issue
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb8/igt@[email protected]

* igt@gem_userptr_blits@unsync-unmap-after-close:
- shard-tglb: NOTRUN -> [SKIP][30] ([i915#3297]) +1 similar issue
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb7/igt@[email protected]

* igt@gem_userptr_blits@vma-merge:
- shard-apl: NOTRUN -> [FAIL][31] ([i915#3318])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl6/igt@[email protected]
- shard-kbl: NOTRUN -> [FAIL][32] ([i915#3318])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl7/igt@[email protected]

* igt@gen3_render_linear_blits:
- shard-tglb: NOTRUN -> [SKIP][33] ([fdo#109289]) +2 similar issues
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb3/igt@gen3_render_linear_blits.html
- shard-iclb: NOTRUN -> [SKIP][34] ([fdo#109289]) +1 similar issue
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb8/igt@gen3_render_linear_blits.html

* igt@gen9_exec_parse@allowed-single:
- shard-tglb: NOTRUN -> [SKIP][35] ([i915#2527] / [i915#2856]) +2 similar issues
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb5/igt@[email protected]

* igt@gen9_exec_parse@unaligned-jump:
- shard-iclb: NOTRUN -> [SKIP][36] ([i915#2856]) +1 similar issue
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb2/igt@[email protected]

* igt@i915_pm_dc@dc6-dpms:
- shard-tglb: NOTRUN -> [FAIL][37] ([i915#454])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb6/igt@[email protected]

* igt@i915_pm_dc@dc9-dpms:
- shard-apl: [PASS][38] -> [SKIP][39] ([fdo#109271])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-apl4/igt@[email protected]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl1/igt@[email protected]

* igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp:
- shard-kbl: NOTRUN -> [SKIP][40] ([fdo#109271] / [i915#1937])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl1/igt@i915_pm_lpsp@[email protected]
- shard-apl: NOTRUN -> [SKIP][41] ([fdo#109271] / [i915#1937])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl4/igt@i915_pm_lpsp@[email protected]

* igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a:
- shard-glk: NOTRUN -> [SKIP][42] ([fdo#109271] / [i915#1937])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk2/igt@i915_pm_lpsp@[email protected]

* igt@i915_pm_rpm@modeset-non-lpsp-stress-no-wait:
- shard-tglb: NOTRUN -> [SKIP][43] ([fdo#111644] / [i915#1397] / [i915#2411])
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb7/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][44] ([fdo#110892])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb2/igt@[email protected]

* igt@kms_big_fb@linear-32bpp-rotate-0:
- shard-glk: [PASS][45] -> [DMESG-WARN][46] ([i915#118]) +1 similar issue
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-glk2/igt@[email protected]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk7/igt@[email protected]

* igt@kms_big_fb@x-tiled-32bpp-rotate-90:
- shard-tglb: NOTRUN -> [SKIP][47] ([fdo#111614]) +1 similar issue
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb5/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][48] ([fdo#110725] / [fdo#111614]) +1 similar issue
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb7/igt@[email protected]

* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-async-flip:
- shard-iclb: NOTRUN -> [SKIP][49] ([fdo#110723]) +1 similar issue
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb5/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html

* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
- shard-tglb: NOTRUN -> [SKIP][50] ([fdo#111615]) +5 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb7/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html

* igt@kms_big_joiner@basic:
- shard-tglb: NOTRUN -> [SKIP][51] ([i915#2705])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb6/igt@[email protected]

* igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_mc_ccs:
- shard-tglb: NOTRUN -> [SKIP][52] ([i915#3689] / [i915#3886]) +2 similar issues
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb1/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_mc_ccs.html

* igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc:
- shard-apl: NOTRUN -> [SKIP][53] ([fdo#109271] / [i915#3886]) +9 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl7/igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html

* igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs_cc:
- shard-glk: NOTRUN -> [SKIP][54] ([fdo#109271] / [i915#3886]) +2 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk5/igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html

* igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs:
- shard-iclb: NOTRUN -> [SKIP][55] ([fdo#109278] / [i915#3886]) +4 similar issues
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb1/igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs.html

* igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs:
- shard-kbl: NOTRUN -> [SKIP][56] ([fdo#109271] / [i915#3886]) +3 similar issues
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl4/igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs.html

* igt@kms_ccs@pipe-c-crc-primary-rotation-180-yf_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][57] ([fdo#111615] / [i915#3689]) +2 similar issues
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb2/igt@kms_ccs@pipe-c-crc-primary-rotation-180-yf_tiled_ccs.html

* igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_mc_ccs:
- shard-tglb: NOTRUN -> [SKIP][58] ([i915#3689]) +4 similar issues
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb1/igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_mc_ccs.html

* igt@kms_chamelium@vga-hpd:
- shard-tglb: NOTRUN -> [SKIP][59] ([fdo#109284] / [fdo#111827]) +7 similar issues
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb5/igt@[email protected]

* igt@kms_color@pipe-d-gamma:
- shard-iclb: NOTRUN -> [SKIP][60] ([fdo#109278] / [i915#1149])
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb7/igt@[email protected]

* igt@kms_color_chamelium@pipe-a-ctm-limited-range:
- shard-apl: NOTRUN -> [SKIP][61] ([fdo#109271] / [fdo#111827]) +12 similar issues
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl6/igt@[email protected]
- shard-glk: NOTRUN -> [SKIP][62] ([fdo#109271] / [fdo#111827]) +2 similar issues
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk3/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][63] ([fdo#109284] / [fdo#111827]) +3 similar issues
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb1/igt@[email protected]

* igt@kms_color_chamelium@pipe-b-ctm-0-5:
- shard-kbl: NOTRUN -> [SKIP][64] ([fdo#109271] / [fdo#111827]) +4 similar issues
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl3/igt@[email protected]

* igt@kms_color_chamelium@pipe-c-ctm-green-to-red:
- shard-snb: NOTRUN -> [SKIP][65] ([fdo#109271] / [fdo#111827]) +2 similar issues
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-snb6/igt@[email protected]

* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-tglb: NOTRUN -> [SKIP][66] ([i915#3116] / [i915#3299])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb5/igt@[email protected]

* igt@kms_cursor_crc@pipe-a-cursor-32x10-offscreen:
- shard-tglb: NOTRUN -> [SKIP][67] ([i915#3359]) +3 similar issues
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb1/igt@[email protected]

* igt@kms_cursor_crc@pipe-a-cursor-max-size-sliding:
- shard-iclb: NOTRUN -> [SKIP][68] ([fdo#109278]) +19 similar issues
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb6/igt@[email protected]

* igt@kms_cursor_crc@pipe-b-cursor-32x32-rapid-movement:
- shard-tglb: NOTRUN -> [SKIP][69] ([i915#3319]) +2 similar issues
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb3/igt@[email protected]

* igt@kms_cursor_crc@pipe-c-cursor-512x512-random:
- shard-tglb: NOTRUN -> [SKIP][70] ([fdo#109279] / [i915#3359]) +2 similar issues
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb1/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][71] ([fdo#109278] / [fdo#109279])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb4/igt@[email protected]

* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- shard-tglb: NOTRUN -> [SKIP][72] ([i915#4103])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb2/igt@[email protected]

* igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size:
- shard-iclb: NOTRUN -> [SKIP][73] ([fdo#109274] / [fdo#109278]) +1 similar issue
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb7/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size.html

* igt@kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible:
- shard-tglb: NOTRUN -> [SKIP][74] ([fdo#109274] / [fdo#111825]) +6 similar issues
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb2/igt@kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible.html
- shard-iclb: NOTRUN -> [SKIP][75] ([fdo#109274])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb3/igt@kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible.html

* igt@kms_flip@2x-plain-flip-ts-check@ab-hdmi-a1-hdmi-a2:
- shard-glk: [PASS][76] -> [FAIL][77] ([i915#2122])
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-glk5/igt@kms_flip@[email protected]
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk7/igt@kms_flip@[email protected]

* igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a2:
- shard-glk: [PASS][78] -> [FAIL][79] ([i915#79])
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-glk2/igt@kms_flip@[email protected]
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk7/igt@kms_flip@[email protected]

* igt@kms_flip@flip-vs-suspend-interruptible@c-dp1:
- shard-apl: [PASS][80] -> [DMESG-WARN][81] ([i915#180]) +1 similar issue
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-apl4/igt@kms_flip@[email protected]
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl8/igt@kms_flip@[email protected]

* igt@kms_flip@flip-vs-suspend@b-dp1:
- shard-kbl: [PASS][82] -> [INCOMPLETE][83] ([i915#636])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-kbl7/igt@kms_flip@[email protected]
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl3/igt@kms_flip@[email protected]

* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling:
- shard-iclb: [PASS][84] -> [SKIP][85] ([i915#3701])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-iclb6/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html

* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt:
- shard-iclb: NOTRUN -> [SKIP][86] ([fdo#109280]) +13 similar issues
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb3/igt@[email protected]

* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-shrfb-msflip-blt:
- shard-snb: NOTRUN -> [SKIP][87] ([fdo#109271]) +108 similar issues
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-snb2/igt@[email protected]

* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt:
- shard-kbl: NOTRUN -> [SKIP][88] ([fdo#109271]) +81 similar issues
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl1/igt@[email protected]

* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-gtt:
- shard-tglb: NOTRUN -> [SKIP][89] ([fdo#109280] / [fdo#111825]) +25 similar issues
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb3/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-gtt.html

* igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d:
- shard-apl: NOTRUN -> [SKIP][90] ([fdo#109271] / [i915#533]) +1 similar issue
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl8/igt@[email protected]

* igt@kms_pipe_crc_basic@read-crc-pipe-d:
- shard-kbl: NOTRUN -> [SKIP][91] ([fdo#109271] / [i915#533])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl1/igt@[email protected]
- shard-glk: NOTRUN -> [SKIP][92] ([fdo#109271] / [i915#533])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk6/igt@[email protected]

* igt@kms_plane_alpha_blend@pipe-a-alpha-basic:
- shard-apl: NOTRUN -> [FAIL][93] ([fdo#108145] / [i915#265]) +3 similar issues
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl1/igt@[email protected]

* igt@kms_plane_alpha_blend@pipe-d-alpha-opaque-fb:
- shard-glk: NOTRUN -> [SKIP][94] ([fdo#109271]) +56 similar issues
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk1/igt@[email protected]

* igt@kms_plane_lowres@pipe-b-tiling-yf:
- shard-tglb: NOTRUN -> [SKIP][95] ([fdo#111615] / [fdo#112054])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb2/igt@[email protected]

* igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
- shard-tglb: NOTRUN -> [SKIP][96] ([i915#2920])
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb6/igt@[email protected]

* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-tglb: NOTRUN -> [SKIP][97] ([i915#1911])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb2/igt@[email protected]
- shard-glk: NOTRUN -> [SKIP][98] ([fdo#109271] / [i915#658])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk8/igt@[email protected]
- shard-apl: NOTRUN -> [SKIP][99] ([fdo#109271] / [i915#658]) +1 similar issue
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl6/igt@[email protected]
- shard-kbl: NOTRUN -> [SKIP][100] ([fdo#109271] / [i915#658])
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl7/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][101] ([fdo#109642] / [fdo#111068] / [i915#658])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb3/igt@[email protected]

* igt@kms_psr@psr2_cursor_plane_move:
- shard-iclb: NOTRUN -> [SKIP][102] ([fdo#109441])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb6/igt@kms_psr@psr2_cursor_plane_move.html
- shard-tglb: NOTRUN -> [FAIL][103] ([i915#132] / [i915#3467])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb1/igt@kms_psr@psr2_cursor_plane_move.html

* igt@kms_psr@psr2_cursor_render:
- shard-iclb: [PASS][104] -> [SKIP][105] ([fdo#109441]) +3 similar issues
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-iclb2/igt@kms_psr@psr2_cursor_render.html
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb3/igt@kms_psr@psr2_cursor_render.html

* igt@kms_setmode@basic:
- shard-glk: [PASS][106] -> [FAIL][107] ([i915#31])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11149/shard-glk6/igt@[email protected]
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk3/igt@[email protected]

* igt@kms_vblank@pipe-d-wait-forked-hang:
- shard-apl: NOTRUN -> [SKIP][108] ([fdo#109271]) +227 similar issues
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl1/igt@[email protected]

* igt@kms_writeback@writeback-fb-id:
- shard-glk: NOTRUN -> [SKIP][109] ([fdo#109271] / [i915#2437])
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-glk6/igt@[email protected]
- shard-kbl: NOTRUN -> [SKIP][110] ([fdo#109271] / [i915#2437])
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl3/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][111] ([i915#2437])
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb5/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][112] ([i915#2437])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb7/igt@[email protected]

* igt@nouveau_crc@pipe-b-source-outp-inactive:
- shard-iclb: NOTRUN -> [SKIP][113] ([i915#2530])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb3/igt@[email protected]

* igt@nouveau_crc@pipe-c-source-outp-complete:
- shard-tglb: NOTRUN -> [SKIP][114] ([i915#2530]) +1 similar issue
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb7/igt@[email protected]

* igt@prime_nv_api@i915_self_import:
- shard-tglb: NOTRUN -> [SKIP][115] ([fdo#109291]) +5 similar issues
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-tglb5/igt@prime_nv_api@i915_self_import.html

* igt@prime_nv_test@nv_i915_sharing:
- shard-iclb: NOTRUN -> [SKIP][116] ([fdo#109291]) +2 similar issues
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb4/igt@prime_nv_test@nv_i915_sharing.html

* igt@prime_vgem@coherency-gtt:
- shard-iclb: NOTRUN -> [SKIP][117] ([fdo#109292])
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-iclb7/igt@[email protected]

* igt@sysfs_clients@fair-0:
- shard-apl: NOTRUN -> [SKIP][118] ([fdo#109271] / [i915#2994]) +2 similar issues
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-apl7/igt@[email protected]

* igt@sysfs_clients@split-50:
- shard-kbl: NOTRUN -> [SKIP][119] ([fdo#109271] / [i915#2994])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/shard-kbl4/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][120] ([i915#2994])
[120]: https://intel-

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6584/index.html

Reviewed-by on v4 1/1
#3 lore raw
In reply to Swati Sharma
Quoted 137 lines · Swati Sharma

In this IGT, various scaling modes are validated. Scaling mode is one of the connector properties. This property defines how a non-native mode is upscaled to the native mode of an LCD panel.

There are 4 types of scaling modes defined:
None:
No upscaling happens, scaling is left to the panel. Not all drivers expose this mode.
Full:
The output is upscaled to the full resolution of the panel, ignoring the aspect ratio. It will expand current image to the size of the monitor.
Center:
No upscaling happens, the output is centered within the native resolution the panel. As a result, black bars may appear around the image.
Full aspect:
The output is upscaled to maximize either the width or height while retaining the aspect ratio. It will fill the screen w/o stretching the image. Black bars are placed either on top and bottom or left and right of the picture.

v2: -removed test flags/test_cycle_flags() (JP)
-removed redundant igt_display_commit_atomic() (JP) -corrected indentation (JP)
v3: -removed valid_test check, getting covered in
igt_subtest_with_dynamic() (Bhanu)
-removed redundant if statement, moved remove_fb()
before skip (JP)
v4: -Removed unnecessary headers (JP)
-Corrected usage of igt_dynamic_f() (Bhanu)

---
  tests/kms_scaling_modes.c | 137 ++++++++++++++++++++++++++++++++++++++
  tests/meson.build         |   1 +
  2 files changed, 138 insertions(+)

create mode 100644 tests/kms_scaling_modes.c

tests/kms_scaling_modes.c new file +90 -0
new file mode 100644
index 00000000..8e80189a
@@ -0,0 +1,137 @@
+/*
+ * Copyright © 2022 Intel Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+ *
+ * Author:
+ *     Swati Sharma <[email protected]>
+ */
+
+#include "igt.h"
+
+IGT_TEST_DESCRIPTION("Test display scaling modes");
+
+/* Common test data */
+typedef struct data {
+	igt_display_t display;
+	int drm_fd;
+} data_t;
+
+static void test_scaling_mode_on_output(igt_display_t *display, const enum pipe pipe,
+					igt_output_t *output, uint32_t flags)
+{
+	igt_plane_t *primary, *sprite;
+	drmModeModeInfo mode;
+	struct igt_fb red, blue;
+	int ret;
+
+	igt_output_set_pipe(output, pipe);
+	mode = *igt_output_get_mode(output);
+
+	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+	sprite = igt_output_get_plane_type(output, DRM_PLANE_TYPE_OVERLAY);
+
+	igt_create_color_fb(display->drm_fd, mode.hdisplay, mode.vdisplay,
+			    DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_NONE,
+			    0.f, 0.f, 1.f, &blue);
+
+	igt_create_color_fb(display->drm_fd, 640, 480,
+			    DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_NONE,
+			    1.f, 0.f, 0.f, &red);
+
+	igt_plane_set_fb(primary, &blue);
+	igt_plane_set_fb(sprite, &red);
+
+	igt_display_try_commit_atomic(display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
+
+	mode.hdisplay = 640;
+	mode.vdisplay = 480;
+	igt_output_override_mode(output, &mode);
+
+	igt_plane_set_fb(sprite, NULL);
+	igt_plane_set_fb(primary, &red);
+
+	igt_output_set_prop_value(output, IGT_CONNECTOR_SCALING_MODE, flags);
+
+	/* Don't pass ALLOW_MODESET with overridden mode, force fastset */
+	ret = igt_display_try_commit_atomic(display, 0, NULL);
+
+	igt_remove_fb(display->drm_fd, &red);
+	igt_remove_fb(display->drm_fd, &blue);
+
+	igt_skip_on_f(ret == -EINVAL, "Scaling mode not supported\n");
+}
+
+/* Returns true if an output supports scaling mode property */
+static bool has_scaling_mode(igt_output_t *output)
+{
+	return igt_output_has_prop(output, IGT_CONNECTOR_SCALING_MODE) &&
+	       igt_output_get_prop(output, IGT_CONNECTOR_SCALING_MODE);
+}
+
+static void test_scaling_mode(data_t *data, uint32_t flags)
+{

tests/kms_scaling_modes.c line 100

Quoted 10 lines
tests/kms_scaling_modes.c new file +10 -0
+	igt_display_t *display = &data->display;
+	igt_output_t *output;
+	enum pipe pipe;
+
+	for_each_pipe_with_valid_output(display, pipe, output) {
+		if (!has_scaling_mode(output))
+			continue;
+
+		igt_dynamic_f("%s-pipe-%s", output->name, kmstest_pipe_name(pipe))
+			test_scaling_mode_on_output(display, pipe, output, flags);

LGTM

- Bhanu

Quoted 49 lines
tests/kms_scaling_modes.c new file +37 -0
+
+		igt_display_reset(display);
+	}
+}
+
+igt_main
+{
+	data_t data = {};
+
+	igt_fixture {
+		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
+		igt_require(data.drm_fd >= 0);
+
+		kmstest_set_vt_graphics_mode();
+
+		igt_display_require(&data.display, data.drm_fd);
+		igt_require(data.display.is_atomic);
+
+		igt_display_require_output(&data.display);
+	}
+
+	igt_describe("Tests full display scaling mode");
+	igt_subtest_with_dynamic("scaling-mode-full")
+		test_scaling_mode(&data, DRM_MODE_SCALE_FULLSCREEN);
+	igt_describe("Tests center display scaling mode");
+	igt_subtest_with_dynamic("scaling-mode-center")
+		test_scaling_mode(&data, DRM_MODE_SCALE_CENTER);
+	igt_describe("Tests full aspect display scaling mode");
+	igt_subtest_with_dynamic("scaling-mode-full-aspect")
+		test_scaling_mode(&data, DRM_MODE_SCALE_ASPECT);
+	igt_describe("Tests none display scaling mode (no scaling)");
+	igt_subtest_with_dynamic("scaling-mode-none")
+		test_scaling_mode(&data, DRM_MODE_SCALE_NONE);
+
+	igt_fixture
+		igt_display_fini(&data.display);
+}
tests/meson.build +1 -0
index c14acf99..7003d064 100644
@@ -50,6 +50,7 @@ test_progs = [
  	'kms_properties',
  	'kms_rmfb',
  	'kms_rotation_crc',
+	'kms_scaling_modes',
  	'kms_selftest',
  	'kms_sequence',
  	'kms_setmode',