* [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup
@ 2022-05-19 5:32 Swati Sharma
2022-05-19 6:17 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Swati Sharma @ 2022-05-19 5:32 UTC (permalink / raw)
To: igt-dev; +Cc: Patnana Venkata Sai
Remove redundant code and before starting the subtest,
clean up the states to default by igt_display_reset().
Few minor fixes in indentation. Added subtests description.
v2: -minor mistake in subtest name
-commit was missing after reset, added
v3: -fixed styling error
-replaced drm calls with igt wrappers
v4: -added igt_display_require_output() in igt_fixture
-modularized code, added func() for checks
-added func() to get highest mode
Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
---
lib/igt_kms.c | 1 -
tests/i915/kms_dsc.c | 263 +++++++++++++++++++++++--------------------
2 files changed, 139 insertions(+), 125 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 7838ff28..50a965ad 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -5304,7 +5304,6 @@ bool igt_is_dsc_supported(int drmfd, drmModeConnector *connector)
*/
bool igt_is_fec_supported(int drmfd, drmModeConnector *connector)
{
-
return check_dsc_debugfs(drmfd, connector, "FEC_Sink_Support: yes");
}
diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
index 22d2216e..3adca600 100644
--- a/tests/i915/kms_dsc.c
+++ b/tests/i915/kms_dsc.c
@@ -44,13 +44,16 @@
#include <fcntl.h>
#include <termios.h>
-/* currently dsc compression is verifying on 8bpc frame only */
+IGT_TEST_DESCRIPTION("Test to validate display stream compression");
+
+#define HDISPLAY_5K 5120
+
+/* currently dsc is verifed on 8bpc frame only */
#define XRGB8888_DRM_FORMAT_MIN_BPP 8
-enum dsc_test_type
-{
- test_basic_dsc_enable,
- test_dsc_compression_bpp
+enum dsc_test_type {
+ TEST_BASIC_DSC_ENABLE,
+ TEST_DSC_COMPRESSION_BPP
};
typedef struct {
@@ -59,9 +62,6 @@ typedef struct {
igt_display_t display;
struct igt_fb fb_test_pattern;
igt_output_t *output;
- int mode_valid;
- drmModeEncoder *encoder;
- int crtc;
int compression_bpp;
int n_pipes;
enum pipe pipe;
@@ -80,9 +80,9 @@ static void force_dsc_enable(data_t *data)
{
int ret;
- igt_debug ("Forcing DSC enable on %s\n", data->conn_name);
+ igt_debug("Forcing DSC enable on %s\n", data->conn_name);
ret = igt_force_dsc_enable(data->drm_fd,
- data->output->config.connector);
+ data->output->config.connector);
igt_assert_f(ret > 0, "debugfs_write failed");
}
@@ -93,8 +93,8 @@ static void force_dsc_enable_bpp(data_t *data)
igt_debug("Forcing DSC BPP to %d on %s\n",
data->compression_bpp, data->conn_name);
ret = igt_force_dsc_enable_bpp(data->drm_fd,
- data->output->config.connector,
- data->compression_bpp);
+ data->output->config.connector,
+ data->compression_bpp);
igt_assert_f(ret > 0, "debugfs_write failed");
}
@@ -105,7 +105,7 @@ static void save_force_dsc_en(data_t *data)
data->output->config.connector);
force_dsc_restore_fd =
igt_get_dsc_debugfs_fd(data->drm_fd,
- data->output->config.connector);
+ data->output->config.connector);
igt_assert(force_dsc_restore_fd >= 0);
}
@@ -121,19 +121,6 @@ static void restore_force_dsc_en(void)
force_dsc_restore_fd = -1;
}
-static void test_cleanup(data_t *data)
-{
- igt_plane_t *primary;
-
- if (data->output) {
- primary = igt_output_get_plane_type(data->output,
- DRM_PLANE_TYPE_PRIMARY);
- igt_plane_set_fb(primary, NULL);
- igt_output_set_pipe(data->output, PIPE_NONE);
- igt_display_commit(&data->display);
- }
-}
-
static void kms_dsc_exit_handler(int sig)
{
restore_force_dsc_en();
@@ -159,29 +146,26 @@ static int sort_drm_modes(const void *a, const void *b)
return (mode1->clock < mode2->clock) - (mode2->clock < mode1->clock);
}
-static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
+static drmModeModeInfo *get_highres_mode(drmModeConnector *connector)
{
- drmModeConnector *connector;
- igt_output_t *output;
-
- connector = drmModeGetConnectorCurrent(data->drm_fd,
- drmConnector);
- if (connector->connection != DRM_MODE_CONNECTED)
- return false;
-
- output = igt_output_from_connector(&data->display, connector);
+ drmModeModeInfo *highest_mode = NULL;
- /*
- * As dsc supports >= 5k modes, we need to suppress lower
- * resolutions.
- */
- qsort(output->config.connector->modes,
- output->config.connector->count_modes,
+ qsort(connector->modes,
+ connector->count_modes,
sizeof(drmModeModeInfo),
sort_drm_modes);
- if (output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort &&
- output->config.connector->modes[0].hdisplay < 5120)
- return NULL;
+
+ highest_mode = &connector->modes[0];
+
+ return highest_mode;
+}
+
+static bool check_dsc_on_connector(data_t *data, igt_output_t *output)
+{
+ drmModeConnector *connector = output->config.connector;
+
+ if (connector->connection != DRM_MODE_CONNECTED)
+ return false;
sprintf(data->conn_name, "%s-%d",
kmstest_connector_type_str(connector->connector_type),
@@ -192,168 +176,199 @@ static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
data->conn_name);
return false;
}
+
if (is_external_panel(connector) &&
!igt_is_fec_supported(data->drm_fd, connector)) {
igt_debug("DSC cannot be enabled without FEC on %s\n",
data->conn_name);
return false;
}
+
data->output = output;
return true;
}
-/*
- * Re-probe connectors and do a modeset with DSC
- *
- */
-static void update_display(data_t *data, enum dsc_test_type test_type)
+static bool check_big_joiner_test_constraint(data_t *data, igt_output_t *output,
+ enum dsc_test_type test_type)
+{
+ drmModeConnector *connector = output->config.connector;
+ drmModeModeInfo *mode = get_highres_mode(connector);
+
+ if (test_type == TEST_DSC_COMPRESSION_BPP &&
+ mode->hdisplay >= HDISPLAY_5K) {
+ igt_debug("Bigjoiner does not support force bpp\n");
+ return false;
+ }
+
+ return true;
+}
+
+static bool check_big_joiner_pipe_constraint(data_t *data, igt_output_t *output,
+ enum pipe pipe)
+{
+ drmModeConnector *connector = output->config.connector;
+ drmModeModeInfo *mode = get_highres_mode(connector);
+
+ if (mode->hdisplay >= HDISPLAY_5K &&
+ pipe == (data->n_pipes - 1 )) {
+ igt_debug("pipe-%s not supported due to bigjoiner limitation\n",
+ kmstest_pipe_name(pipe));
+ return false;
+ }
+
+ return true;
+}
+
+static bool check_dp_gen11_constraint(data_t *data, igt_output_t *output, enum pipe pipe)
+{
+ uint32_t devid = intel_get_drm_devid(data->drm_fd);
+ drmModeConnector *connector = output->config.connector;
+
+ if ((connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) &&
+ (pipe == PIPE_A) && IS_GEN11(devid)) {
+ igt_debug("DSC not supported on pipe A on external DP in gen11 platforms\n");
+ return false;
+ }
+
+ return true;
+}
+/* re-probe connectors and do a modeset with DSC */
+static void update_display(data_t *data, igt_output_t *output, enum pipe pipe,
+ enum dsc_test_type test_type)
{
bool enabled;
igt_plane_t *primary;
+ drmModeModeInfo *mode;
+ igt_display_t *display = &data->display;
+ drmModeConnector *connector = data->output->config.connector;
- /* Disable the output first */
- igt_output_set_pipe(data->output, PIPE_NONE);
- igt_display_commit(&data->display);
+ /* sanitize the state before starting the subtest. */
+ igt_display_reset(display);
+ igt_display_commit(display);
igt_debug("DSC is supported on %s\n", data->conn_name);
save_force_dsc_en(data);
force_dsc_enable(data);
- if (test_type == test_dsc_compression_bpp) {
+
+ if (test_type == TEST_DSC_COMPRESSION_BPP) {
igt_debug("Trying to set BPP to %d\n", data->compression_bpp);
force_dsc_enable_bpp(data);
}
- igt_output_set_pipe(data->output, data->pipe);
- qsort(data->output->config.connector->modes,
- data->output->config.connector->count_modes,
- sizeof(drmModeModeInfo),
- sort_drm_modes);
- igt_output_override_mode(data->output, &data->output->config.connector->modes[0]);
+ igt_output_set_pipe(data->output, pipe);
+
+ mode = get_highres_mode(connector);
+ igt_require(mode != NULL);
+ igt_output_override_mode(data->output, mode);
+
primary = igt_output_get_plane_type(data->output,
DRM_PLANE_TYPE_PRIMARY);
+ igt_create_pattern_fb(data->drm_fd,
+ mode->hdisplay,
+ mode->vdisplay,
+ DRM_FORMAT_XRGB8888,
+ DRM_FORMAT_MOD_LINEAR,
+ &data->fb_test_pattern);
- /* Now set the output to the desired mode */
igt_plane_set_fb(primary, &data->fb_test_pattern);
igt_display_commit(&data->display);
/*
- * Until we have CRC check support, manually check if RGB test
+ * until we have CRC check support, manually check if RGB test
* pattern has no corruption.
*/
manual("RGB test pattern without corruption");
- enabled = igt_is_dsc_enabled(data->drm_fd,
- data->output->config.connector);
+ enabled = igt_is_dsc_enabled(data->drm_fd, connector);
restore_force_dsc_en();
igt_debug("Reset compression BPP\n");
data->compression_bpp = 0;
force_dsc_enable_bpp(data);
igt_assert_f(enabled,
- "Default DSC enable failed on Connector: %s Pipe: %s\n",
+ "Default DSC enable failed on connector: %s pipe: %s\n",
data->conn_name,
- kmstest_pipe_name(data->pipe));
+ kmstest_pipe_name(pipe));
+
+ igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
+ igt_plane_set_fb(primary, NULL);
+ igt_output_set_pipe(data->output, PIPE_NONE);
}
-static void run_test(data_t *data, enum dsc_test_type test_type)
+static void test_dsc(data_t *data, enum dsc_test_type test_type)
{
+ igt_display_t *display = &data->display;
+ igt_output_t *output;
enum pipe pipe;
char test_name[10];
- igt_skip_on_f(test_type == test_dsc_compression_bpp &&
- data->output->config.connector->modes[0].hdisplay >= 5120,
- "bigjoiner does not support force bpp\n");
-
- igt_create_pattern_fb(data->drm_fd,
- data->output->config.connector->modes[0].hdisplay,
- data->output->config.connector->modes[0].vdisplay,
- DRM_FORMAT_XRGB8888,
- DRM_FORMAT_MOD_LINEAR,
- &data->fb_test_pattern);
+ for_each_pipe_with_valid_output(display, pipe, output) {
+ if (!check_dsc_on_connector(data, output))
+ continue;
- for_each_pipe(&data->display, pipe) {
- uint32_t devid = intel_get_drm_devid(data->drm_fd);
+ if (!check_big_joiner_test_constraint(data, output, test_type))
+ continue;
- if (data->output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort &&
- pipe == PIPE_A && IS_GEN11(devid)) {
- igt_debug("DSC not supported on Pipe A on external DP in Gen11 platforms\n");
+ if (!check_dp_gen11_constraint(data, output, pipe))
continue;
- }
- snprintf(test_name, sizeof(test_name), "-%dbpp", data->compression_bpp);
- if (!igt_pipe_connector_valid(pipe, data->output))
+ if (!check_big_joiner_pipe_constraint(data, output, pipe))
continue;
- igt_dynamic_f("%s-pipe-%s%s", data->output->name,
- kmstest_pipe_name(pipe),
- (test_type == test_dsc_compression_bpp) ?
- test_name : "") {
- data->pipe = pipe;
- igt_skip_on_f((data->output->config.connector->modes[0].hdisplay >= 5120) &&
- (pipe == (data->n_pipes - 1)),
- "pipe-%s not supported due to bigjoiner limitation\n",
- kmstest_pipe_name(pipe));
- update_display(data, test_type);
+ if (!igt_pipe_connector_valid(pipe, output))
+ continue;
- }
- if (test_type == test_dsc_compression_bpp)
- break;
+ snprintf(test_name, sizeof(test_name), "-%dbpp", data->compression_bpp);
+ igt_dynamic_f("pipe-%s-%s%s", kmstest_pipe_name(pipe), output->name,
+ (test_type == TEST_DSC_COMPRESSION_BPP) ? test_name : "")
+ update_display(data, output, pipe, test_type);
}
-
- igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
}
igt_main
{
data_t data = {};
- drmModeRes *res;
- drmModeConnector *connector = NULL;
- int i, j;
+ int i;
+
igt_fixture {
data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
data.devid = intel_get_drm_devid(data.drm_fd);
kmstest_set_vt_graphics_mode();
igt_install_exit_handler(kms_dsc_exit_handler);
igt_display_require(&data.display, data.drm_fd);
- igt_require(res = drmModeGetResources(data.drm_fd));
+ igt_display_require_output(&data.display);
data.n_pipes = 0;
for_each_pipe(&data.display, i)
data.n_pipes++;
}
- igt_subtest_with_dynamic("basic-dsc-enable") {
- for (j = 0; j < res->count_connectors; j++) {
- if (!check_dsc_on_connector(&data, res->connectors[j]))
- continue;
- run_test(&data, test_basic_dsc_enable);
- }
- }
+
+ igt_describe("Tests basic display stream compression functionality if supported "
+ "by a connector by forcing DSC on all connectors that support it "
+ "with default parameters");
+ igt_subtest_with_dynamic("basic-dsc-enable")
+ test_dsc(&data, TEST_BASIC_DSC_ENABLE);
+
/* currently we are validating compression bpp on XRGB8888 format only */
+ igt_describe("Tests basic display stream compression functionality if supported "
+ "by a connector by forcing DSC on all connectors that support it "
+ "with certain BPP as the output BPP for the connector");
igt_subtest_with_dynamic("XRGB8888-dsc-compression") {
uint32_t bpp_list[] = {
XRGB8888_DRM_FORMAT_MIN_BPP,
(XRGB8888_DRM_FORMAT_MIN_BPP +
- (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
+ (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
(XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1
};
igt_require(intel_display_ver(data.devid) >= 13);
- for (j = 0; j < res->count_connectors; j++) {
- if (!check_dsc_on_connector(&data, res->connectors[j]))
- continue;
-
- for (i = 0; i < ARRAY_SIZE(bpp_list); i++) {
- data.compression_bpp = bpp_list[i];
- run_test(&data, test_dsc_compression_bpp);
- }
+ for (int j = 0; j < ARRAY_SIZE(bpp_list); j++) {
+ data.compression_bpp = bpp_list[j];
+ test_dsc(&data, TEST_DSC_COMPRESSION_BPP);
}
}
igt_fixture {
- if (connector)
- drmModeFreeConnector(connector);
- test_cleanup(&data);
- drmModeFreeResources(res);
igt_display_fini(&data.display);
close(data.drm_fd);
}
--
2.25.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4)
2022-05-19 5:32 [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Swati Sharma
@ 2022-05-19 6:17 ` Patchwork
2022-05-19 6:25 ` [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Modem, Bhanuprakash
2022-05-19 7:08 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2022-05-19 6:17 UTC (permalink / raw)
To: Swati Sharma; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 7877 bytes --]
== Series Details ==
Series: tests/i915/kms_dsc: IGT cleanup (rev4)
URL : https://patchwork.freedesktop.org/series/103935/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_11675 -> IGTPW_7140
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/index.html
Participating hosts (45 -> 44)
------------------------------
Additional (2): bat-dg2-9 fi-tgl-u2
Missing (3): fi-rkl-11600 fi-icl-u2 fi-cfl-8700k
Known issues
------------
Here are the changes found in IGTPW_7140 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_huc_copy@huc-copy:
- fi-tgl-u2: NOTRUN -> [SKIP][1] ([i915#2190])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@gem_huc_copy@huc-copy.html
* igt@i915_module_load@reload:
- fi-kbl-soraka: [PASS][2] -> [DMESG-WARN][3] ([i915#1982])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/fi-kbl-soraka/igt@i915_module_load@reload.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-kbl-soraka/igt@i915_module_load@reload.html
* igt@i915_pm_rpm@module-reload:
- fi-bdw-5557u: [PASS][4] -> [INCOMPLETE][5] ([i915#6002])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/fi-bdw-5557u/igt@i915_pm_rpm@module-reload.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-bdw-5557u/igt@i915_pm_rpm@module-reload.html
* igt@kms_busy@basic@flip:
- fi-tgl-u2: NOTRUN -> [DMESG-WARN][6] ([i915#402]) +1 similar issue
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@kms_busy@basic@flip.html
* igt@kms_chamelium@dp-hpd-fast:
- fi-tgl-u2: NOTRUN -> [SKIP][7] ([fdo#109284] / [fdo#111827]) +7 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@kms_chamelium@dp-hpd-fast.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-tgl-u2: NOTRUN -> [SKIP][8] ([i915#4103]) +1 similar issue
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_force_connector_basic@force-load-detect:
- fi-tgl-u2: NOTRUN -> [SKIP][9] ([fdo#109285])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@kms_force_connector_basic@force-load-detect.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-skl-6700k2: [PASS][10] -> [INCOMPLETE][11] ([i915#4444])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/fi-skl-6700k2/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-skl-6700k2/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
* igt@kms_setmode@basic-clone-single-crtc:
- fi-tgl-u2: NOTRUN -> [SKIP][12] ([i915#3555])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@kms_setmode@basic-clone-single-crtc.html
* igt@prime_vgem@basic-userptr:
- fi-tgl-u2: NOTRUN -> [SKIP][13] ([i915#3301])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@prime_vgem@basic-userptr.html
#### Possible fixes ####
* igt@i915_selftest@live@gt_pm:
- fi-tgl-1115g4: [DMESG-FAIL][14] ([i915#3987]) -> [PASS][15]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/fi-tgl-1115g4/igt@i915_selftest@live@gt_pm.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-1115g4/igt@i915_selftest@live@gt_pm.html
* igt@i915_selftest@live@hangcheck:
- bat-dg1-6: [DMESG-FAIL][16] ([i915#4494] / [i915#4957]) -> [PASS][17]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
* igt@i915_selftest@live@hugepages:
- {bat-rpls-1}: [DMESG-WARN][18] ([i915#5278]) -> [PASS][19]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/bat-rpls-1/igt@i915_selftest@live@hugepages.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/bat-rpls-1/igt@i915_selftest@live@hugepages.html
* igt@kms_flip@basic-flip-vs-modeset@b-edp1:
- {bat-adlp-6}: [DMESG-WARN][20] ([i915#3576]) -> [PASS][21] +1 similar issue
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/bat-adlp-6/igt@kms_flip@basic-flip-vs-modeset@b-edp1.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/bat-adlp-6/igt@kms_flip@basic-flip-vs-modeset@b-edp1.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3576]: https://gitlab.freedesktop.org/drm/intel/issues/3576
[i915#3595]: https://gitlab.freedesktop.org/drm/intel/issues/3595
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3987]: https://gitlab.freedesktop.org/drm/intel/issues/3987
[i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
[i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
[i915#4444]: https://gitlab.freedesktop.org/drm/intel/issues/4444
[i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
[i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
[i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
[i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957
[i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
[i915#5087]: https://gitlab.freedesktop.org/drm/intel/issues/5087
[i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
[i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274
[i915#5278]: https://gitlab.freedesktop.org/drm/intel/issues/5278
[i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
[i915#5885]: https://gitlab.freedesktop.org/drm/intel/issues/5885
[i915#6002]: https://gitlab.freedesktop.org/drm/intel/issues/6002
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_6480 -> IGTPW_7140
CI-20190529: 20190529
CI_DRM_11675: c31582c636f4c6ac8c0f822c39b250db2c5cd437 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_7140: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/index.html
IGT_6480: 40ee6f52ac54858fa857fcdef52c0c791abf9344 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/index.html
[-- Attachment #2: Type: text/html, Size: 7404 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup
2022-05-19 5:32 [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Swati Sharma
2022-05-19 6:17 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
@ 2022-05-19 6:25 ` Modem, Bhanuprakash
2022-05-24 16:44 ` Sharma, Swati2
2022-05-19 7:08 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
2 siblings, 1 reply; 6+ messages in thread
From: Modem, Bhanuprakash @ 2022-05-19 6:25 UTC (permalink / raw)
To: Swati Sharma, igt-dev; +Cc: Patnana Venkata Sai
Hi Swati,
Overall, this patch looks good to me. I have dropped few minor comments
to be addressed inline.
On Thu-19-05-2022 11:02 am, Swati Sharma wrote:
> Remove redundant code and before starting the subtest,
> clean up the states to default by igt_display_reset().
> Few minor fixes in indentation. Added subtests description.
>
> v2: -minor mistake in subtest name
> -commit was missing after reset, added
> v3: -fixed styling error
> -replaced drm calls with igt wrappers
> v4: -added igt_display_require_output() in igt_fixture
> -modularized code, added func() for checks
> -added func() to get highest mode
>
> Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
> Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
> ---
> lib/igt_kms.c | 1 -
> tests/i915/kms_dsc.c | 263 +++++++++++++++++++++++--------------------
> 2 files changed, 139 insertions(+), 125 deletions(-)
>
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index 7838ff28..50a965ad 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -5304,7 +5304,6 @@ bool igt_is_dsc_supported(int drmfd, drmModeConnector *connector)
> */
> bool igt_is_fec_supported(int drmfd, drmModeConnector *connector)
> {
> -
> return check_dsc_debugfs(drmfd, connector, "FEC_Sink_Support: yes");
> }
>
> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
> index 22d2216e..3adca600 100644
> --- a/tests/i915/kms_dsc.c
> +++ b/tests/i915/kms_dsc.c
> @@ -44,13 +44,16 @@
> #include <fcntl.h>
> #include <termios.h>
>
> -/* currently dsc compression is verifying on 8bpc frame only */
> +IGT_TEST_DESCRIPTION("Test to validate display stream compression");
> +
> +#define HDISPLAY_5K 5120
> +
> +/* currently dsc is verifed on 8bpc frame only */
> #define XRGB8888_DRM_FORMAT_MIN_BPP 8
>
> -enum dsc_test_type
> -{
> - test_basic_dsc_enable,
> - test_dsc_compression_bpp
> +enum dsc_test_type {
> + TEST_BASIC_DSC_ENABLE,
> + TEST_DSC_COMPRESSION_BPP
> };
>
> typedef struct {
> @@ -59,9 +62,6 @@ typedef struct {
> igt_display_t display;
> struct igt_fb fb_test_pattern;
> igt_output_t *output;
> - int mode_valid;
> - drmModeEncoder *encoder;
> - int crtc;
> int compression_bpp;
> int n_pipes;
> enum pipe pipe;
> @@ -80,9 +80,9 @@ static void force_dsc_enable(data_t *data)
> {
> int ret;
>
> - igt_debug ("Forcing DSC enable on %s\n", data->conn_name);
> + igt_debug("Forcing DSC enable on %s\n", data->conn_name);
> ret = igt_force_dsc_enable(data->drm_fd,
> - data->output->config.connector);
> + data->output->config.connector);
> igt_assert_f(ret > 0, "debugfs_write failed");
> }
>
> @@ -93,8 +93,8 @@ static void force_dsc_enable_bpp(data_t *data)
> igt_debug("Forcing DSC BPP to %d on %s\n",
> data->compression_bpp, data->conn_name);
> ret = igt_force_dsc_enable_bpp(data->drm_fd,
> - data->output->config.connector,
> - data->compression_bpp);
> + data->output->config.connector,
> + data->compression_bpp);
> igt_assert_f(ret > 0, "debugfs_write failed");
> }
>
> @@ -105,7 +105,7 @@ static void save_force_dsc_en(data_t *data)
> data->output->config.connector);
> force_dsc_restore_fd =
> igt_get_dsc_debugfs_fd(data->drm_fd,
> - data->output->config.connector);
> + data->output->config.connector);
> igt_assert(force_dsc_restore_fd >= 0);
> }
>
> @@ -121,19 +121,6 @@ static void restore_force_dsc_en(void)
> force_dsc_restore_fd = -1;
> }
>
> -static void test_cleanup(data_t *data)
> -{
> - igt_plane_t *primary;
> -
> - if (data->output) {
> - primary = igt_output_get_plane_type(data->output,
> - DRM_PLANE_TYPE_PRIMARY);
> - igt_plane_set_fb(primary, NULL);
> - igt_output_set_pipe(data->output, PIPE_NONE);
> - igt_display_commit(&data->display);
> - }
> -}
> -
> static void kms_dsc_exit_handler(int sig)
> {
> restore_force_dsc_en();
> @@ -159,29 +146,26 @@ static int sort_drm_modes(const void *a, const void *b)
> return (mode1->clock < mode2->clock) - (mode2->clock < mode1->clock);
> }
>
> -static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
> +static drmModeModeInfo *get_highres_mode(drmModeConnector *connector)
> {
> - drmModeConnector *connector;
> - igt_output_t *output;
> -
> - connector = drmModeGetConnectorCurrent(data->drm_fd,
> - drmConnector);
> - if (connector->connection != DRM_MODE_CONNECTED)
> - return false;
> -
> - output = igt_output_from_connector(&data->display, connector);
> + drmModeModeInfo *highest_mode = NULL;
>
> - /*
> - * As dsc supports >= 5k modes, we need to suppress lower
> - * resolutions.
> - */
> - qsort(output->config.connector->modes,
> - output->config.connector->count_modes,
> + qsort(connector->modes,
> + connector->count_modes,
> sizeof(drmModeModeInfo),
> sort_drm_modes);
> - if (output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort &&
> - output->config.connector->modes[0].hdisplay < 5120)
> - return NULL;
> +
> + highest_mode = &connector->modes[0];
> +
> + return highest_mode;
> +}
> +
> +static bool check_dsc_on_connector(data_t *data, igt_output_t *output)
> +{
> + drmModeConnector *connector = output->config.connector;
> +
> + if (connector->connection != DRM_MODE_CONNECTED)
> + return false;
This check is redundant, for_each_pipe_with_valid_output() is already
doing this check.
>
> sprintf(data->conn_name, "%s-%d",
Please drop data->conn_name, instead please use data->output->name;
> kmstest_connector_type_str(connector->connector_type),
> @@ -192,168 +176,199 @@ static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
> data->conn_name);
> return false;
> }
> +
> if (is_external_panel(connector) &&
> !igt_is_fec_supported(data->drm_fd, connector)) {
> igt_debug("DSC cannot be enabled without FEC on %s\n",
> data->conn_name);
> return false;
> }
> +
> data->output = output;
This could be moved to test_dsc()
> return true;
> }
>
> -/*
> - * Re-probe connectors and do a modeset with DSC
> - *
> - */
> -static void update_display(data_t *data, enum dsc_test_type test_type)
> +static bool check_big_joiner_test_constraint(data_t *data, igt_output_t *output,
> + enum dsc_test_type test_type)
> +{
> + drmModeConnector *connector = output->config.connector;
> + drmModeModeInfo *mode = get_highres_mode(connector);
> +
> + if (test_type == TEST_DSC_COMPRESSION_BPP &&
> + mode->hdisplay >= HDISPLAY_5K) {
> + igt_debug("Bigjoiner does not support force bpp\n");
> + return false;
> + }
> +
> + return true;
> +}
> +
> +static bool check_big_joiner_pipe_constraint(data_t *data, igt_output_t *output,
> + enum pipe pipe)
> +{
> + drmModeConnector *connector = output->config.connector;
> + drmModeModeInfo *mode = get_highres_mode(connector);
> +
> + if (mode->hdisplay >= HDISPLAY_5K &&
> + pipe == (data->n_pipes - 1 )) {
> + igt_debug("pipe-%s not supported due to bigjoiner limitation\n",
> + kmstest_pipe_name(pipe));
> + return false;
> + }
> +
> + return true;
> +}
> +
> +static bool check_dp_gen11_constraint(data_t *data, igt_output_t *output, enum pipe pipe)
> +{
> + uint32_t devid = intel_get_drm_devid(data->drm_fd);
> + drmModeConnector *connector = output->config.connector;
> +
> + if ((connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) &&
> + (pipe == PIPE_A) && IS_GEN11(devid)) {
> + igt_debug("DSC not supported on pipe A on external DP in gen11 platforms\n");
> + return false;
> + }
> +
> + return true;
> +}
> +/* re-probe connectors and do a modeset with DSC */
> +static void update_display(data_t *data, igt_output_t *output, enum pipe pipe,
> + enum dsc_test_type test_type)
> {
> bool enabled;
> igt_plane_t *primary;
> + drmModeModeInfo *mode;
> + igt_display_t *display = &data->display;
> + drmModeConnector *connector = data->output->config.connector;
>
> - /* Disable the output first */
> - igt_output_set_pipe(data->output, PIPE_NONE);
> - igt_display_commit(&data->display);
> + /* sanitize the state before starting the subtest. */
> + igt_display_reset(display);
> + igt_display_commit(display);
>
> igt_debug("DSC is supported on %s\n", data->conn_name);
> save_force_dsc_en(data);
> force_dsc_enable(data);
> - if (test_type == test_dsc_compression_bpp) {
> +
> + if (test_type == TEST_DSC_COMPRESSION_BPP) {
> igt_debug("Trying to set BPP to %d\n", data->compression_bpp);
> force_dsc_enable_bpp(data);
> }
>
> - igt_output_set_pipe(data->output, data->pipe);
> - qsort(data->output->config.connector->modes,
> - data->output->config.connector->count_modes,
> - sizeof(drmModeModeInfo),
> - sort_drm_modes);
> - igt_output_override_mode(data->output, &data->output->config.connector->modes[0]);
> + igt_output_set_pipe(data->output, pipe);
> +
> + mode = get_highres_mode(connector);
> + igt_require(mode != NULL);
> + igt_output_override_mode(data->output, mode);
> +
> primary = igt_output_get_plane_type(data->output,
> DRM_PLANE_TYPE_PRIMARY);
> + igt_create_pattern_fb(data->drm_fd,
> + mode->hdisplay,
> + mode->vdisplay,
> + DRM_FORMAT_XRGB8888,
> + DRM_FORMAT_MOD_LINEAR,
> + &data->fb_test_pattern);
>
> - /* Now set the output to the desired mode */
> igt_plane_set_fb(primary, &data->fb_test_pattern);
> igt_display_commit(&data->display);
>
> /*
> - * Until we have CRC check support, manually check if RGB test
> + * until we have CRC check support, manually check if RGB test
> * pattern has no corruption.
> */
> manual("RGB test pattern without corruption");
>
> - enabled = igt_is_dsc_enabled(data->drm_fd,
> - data->output->config.connector);
> + enabled = igt_is_dsc_enabled(data->drm_fd, connector);
> restore_force_dsc_en();
> igt_debug("Reset compression BPP\n");
> data->compression_bpp = 0;
> force_dsc_enable_bpp(data);
>
> igt_assert_f(enabled,
> - "Default DSC enable failed on Connector: %s Pipe: %s\n",
> + "Default DSC enable failed on connector: %s pipe: %s\n",
> data->conn_name,
> - kmstest_pipe_name(data->pipe));
> + kmstest_pipe_name(pipe));
> +
> + igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
> + igt_plane_set_fb(primary, NULL);
> + igt_output_set_pipe(data->output, PIPE_NONE);
Please do commit here.
> }
>
> -static void run_test(data_t *data, enum dsc_test_type test_type)
> +static void test_dsc(data_t *data, enum dsc_test_type test_type)
> {
> + igt_display_t *display = &data->display;
> + igt_output_t *output;
> enum pipe pipe;
> char test_name[10];
>
> - igt_skip_on_f(test_type == test_dsc_compression_bpp &&
> - data->output->config.connector->modes[0].hdisplay >= 5120,
> - "bigjoiner does not support force bpp\n");
> -
> - igt_create_pattern_fb(data->drm_fd,
> - data->output->config.connector->modes[0].hdisplay,
> - data->output->config.connector->modes[0].vdisplay,
> - DRM_FORMAT_XRGB8888,
> - DRM_FORMAT_MOD_LINEAR,
> - &data->fb_test_pattern);
> + for_each_pipe_with_valid_output(display, pipe, output) {
> + if (!check_dsc_on_connector(data, output))
> + continue;
>
> - for_each_pipe(&data->display, pipe) {
> - uint32_t devid = intel_get_drm_devid(data->drm_fd);
> + if (!check_big_joiner_test_constraint(data, output, test_type))
> + continue;
>
> - if (data->output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort &&
> - pipe == PIPE_A && IS_GEN11(devid)) {
> - igt_debug("DSC not supported on Pipe A on external DP in Gen11 platforms\n");
> + if (!check_dp_gen11_constraint(data, output, pipe))
> continue;
> - }
>
> - snprintf(test_name, sizeof(test_name), "-%dbpp", data->compression_bpp);
> - if (!igt_pipe_connector_valid(pipe, data->output))
> + if (!check_big_joiner_pipe_constraint(data, output, pipe))
> continue;
>
> - igt_dynamic_f("%s-pipe-%s%s", data->output->name,
> - kmstest_pipe_name(pipe),
> - (test_type == test_dsc_compression_bpp) ?
> - test_name : "") {
> - data->pipe = pipe;
> - igt_skip_on_f((data->output->config.connector->modes[0].hdisplay >= 5120) &&
> - (pipe == (data->n_pipes - 1)),
> - "pipe-%s not supported due to bigjoiner limitation\n",
> - kmstest_pipe_name(pipe));
> - update_display(data, test_type);
> + if (!igt_pipe_connector_valid(pipe, output))
> + continue;
This check is redundant, for_each_pipe_with_valid_output() is already
taken care of this check.
>
> - }
> - if (test_type == test_dsc_compression_bpp)
> - break;
> + snprintf(test_name, sizeof(test_name), "-%dbpp", data->compression_bpp);
> + igt_dynamic_f("pipe-%s-%s%s", kmstest_pipe_name(pipe), output->name,
> + (test_type == TEST_DSC_COMPRESSION_BPP) ? test_name : "")
> + update_display(data, output, pipe, test_type);
> }
> -
> - igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
> }
>
> igt_main
> {
> data_t data = {};
> - drmModeRes *res;
> - drmModeConnector *connector = NULL;
> - int i, j;
> + int i;
> +
> igt_fixture {
> data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
> data.devid = intel_get_drm_devid(data.drm_fd);
> kmstest_set_vt_graphics_mode();
> igt_install_exit_handler(kms_dsc_exit_handler);
> igt_display_require(&data.display, data.drm_fd);
> - igt_require(res = drmModeGetResources(data.drm_fd));
> + igt_display_require_output(&data.display);
> data.n_pipes = 0;
> for_each_pipe(&data.display, i)
> data.n_pipes++;
> }
> - igt_subtest_with_dynamic("basic-dsc-enable") {
> - for (j = 0; j < res->count_connectors; j++) {
> - if (!check_dsc_on_connector(&data, res->connectors[j]))
> - continue;
> - run_test(&data, test_basic_dsc_enable);
> - }
> - }
> +
> + igt_describe("Tests basic display stream compression functionality if supported "
> + "by a connector by forcing DSC on all connectors that support it "
> + "with default parameters");
> + igt_subtest_with_dynamic("basic-dsc-enable")
> + test_dsc(&data, TEST_BASIC_DSC_ENABLE);
> +
> /* currently we are validating compression bpp on XRGB8888 format only */
> + igt_describe("Tests basic display stream compression functionality if supported "
> + "by a connector by forcing DSC on all connectors that support it "
> + "with certain BPP as the output BPP for the connector");
> igt_subtest_with_dynamic("XRGB8888-dsc-compression") {
> uint32_t bpp_list[] = {
> XRGB8888_DRM_FORMAT_MIN_BPP,
> (XRGB8888_DRM_FORMAT_MIN_BPP +
> - (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
> + (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
> (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1
> };
>
> igt_require(intel_display_ver(data.devid) >= 13);
This check can be in igt_fixture?
- Bhanu
>
> - for (j = 0; j < res->count_connectors; j++) {
> - if (!check_dsc_on_connector(&data, res->connectors[j]))
> - continue;
> -
> - for (i = 0; i < ARRAY_SIZE(bpp_list); i++) {
> - data.compression_bpp = bpp_list[i];
> - run_test(&data, test_dsc_compression_bpp);
> - }
> + for (int j = 0; j < ARRAY_SIZE(bpp_list); j++) {
> + data.compression_bpp = bpp_list[j];
> + test_dsc(&data, TEST_DSC_COMPRESSION_BPP);
> }
> }
>
> igt_fixture {
> - if (connector)
> - drmModeFreeConnector(connector);
> - test_cleanup(&data);
> - drmModeFreeResources(res);
> igt_display_fini(&data.display);
> close(data.drm_fd);
> }
^ permalink raw reply [flat|nested] 6+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_dsc: IGT cleanup (rev4)
2022-05-19 5:32 [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Swati Sharma
2022-05-19 6:17 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
2022-05-19 6:25 ` [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Modem, Bhanuprakash
@ 2022-05-19 7:08 ` Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2022-05-19 7:08 UTC (permalink / raw)
To: Swati Sharma; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 52316 bytes --]
== Series Details ==
Series: tests/i915/kms_dsc: IGT cleanup (rev4)
URL : https://patchwork.freedesktop.org/series/103935/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_11675_full -> IGTPW_7140_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/index.html
Participating hosts (13 -> 9)
------------------------------
Missing (4): pig-skl-6260u pig-kbl-iris shard-rkl pig-glk-j5005
New tests
---------
New tests have been introduced between CI_DRM_11675_full and IGTPW_7140_full:
### New IGT tests (5) ###
* igt@kms_dsc@basic-dsc-enable@pipe-a-edp-1:
- Statuses : 1 pass(s)
- Exec time: [1.25] s
* igt@kms_dsc@basic-dsc-enable@pipe-b-edp-1:
- Statuses : 1 pass(s)
- Exec time: [1.21] s
* igt@kms_dsc@basic-dsc-enable@pipe-c-edp-1:
- Statuses : 1 pass(s)
- Exec time: [1.21] s
* igt@kms_dsc@basic-dsc-enable@pipe-d-edp-1:
- Statuses : 1 pass(s)
- Exec time: [1.22] s
* igt@kms_flip@flip-vs-modeset-vs-hang@d-hdmi-a3:
- Statuses : 1 pass(s)
- Exec time: [29.96] s
Known issues
------------
Here are the changes found in IGTPW_7140_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@blit-noreloc-purge-cache-random:
- shard-snb: NOTRUN -> [SKIP][1] ([fdo#109271]) +140 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-snb6/igt@api_intel_bb@blit-noreloc-purge-cache-random.html
* igt@feature_discovery@display-3x:
- shard-iclb: NOTRUN -> [SKIP][2] ([i915#1839])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@feature_discovery@display-3x.html
- shard-tglb: NOTRUN -> [SKIP][3] ([i915#1839])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@feature_discovery@display-3x.html
* igt@gem_ccs@block-copy-uncompressed:
- shard-iclb: NOTRUN -> [SKIP][4] ([i915#5327])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@gem_ccs@block-copy-uncompressed.html
* igt@gem_ctx_persistence@legacy-engines-mixed-process:
- shard-snb: NOTRUN -> [SKIP][5] ([fdo#109271] / [i915#1099]) +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-snb5/igt@gem_ctx_persistence@legacy-engines-mixed-process.html
* igt@gem_exec_balancer@parallel-keep-submit-fence:
- shard-kbl: NOTRUN -> [DMESG-WARN][6] ([i915#5076] / [i915#5614])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl6/igt@gem_exec_balancer@parallel-keep-submit-fence.html
* igt@gem_exec_fair@basic-deadline:
- shard-glk: NOTRUN -> [FAIL][7] ([i915#2846])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk2/igt@gem_exec_fair@basic-deadline.html
* igt@gem_exec_fair@basic-none-share@rcs0:
- shard-tglb: NOTRUN -> [FAIL][8] ([i915#2842])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@gem_exec_fair@basic-none-share@rcs0.html
* igt@gem_exec_fair@basic-pace@vecs0:
- shard-kbl: [PASS][9] -> [FAIL][10] ([i915#2842])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl3/igt@gem_exec_fair@basic-pace@vecs0.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@gem_exec_fair@basic-pace@vecs0.html
* igt@gem_exec_fair@basic-throttle@rcs0:
- shard-glk: NOTRUN -> [FAIL][11] ([i915#2842])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk7/igt@gem_exec_fair@basic-throttle@rcs0.html
* igt@gem_lmem_swapping@heavy-verify-multi:
- shard-kbl: NOTRUN -> [SKIP][12] ([fdo#109271] / [i915#4613]) +1 similar issue
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@gem_lmem_swapping@heavy-verify-multi.html
* igt@gem_lmem_swapping@random-engines:
- shard-iclb: NOTRUN -> [SKIP][13] ([i915#4613]) +2 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@gem_lmem_swapping@random-engines.html
- shard-tglb: NOTRUN -> [SKIP][14] ([i915#4613])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@gem_lmem_swapping@random-engines.html
* igt@gem_lmem_swapping@verify-random:
- shard-glk: NOTRUN -> [SKIP][15] ([fdo#109271] / [i915#4613])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk4/igt@gem_lmem_swapping@verify-random.html
* igt@gem_pxp@reject-modify-context-protection-off-3:
- shard-iclb: NOTRUN -> [SKIP][16] ([i915#4270])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@gem_pxp@reject-modify-context-protection-off-3.html
* igt@gem_pxp@verify-pxp-stale-buf-execution:
- shard-tglb: NOTRUN -> [SKIP][17] ([i915#4270])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@gem_pxp@verify-pxp-stale-buf-execution.html
* igt@gem_render_copy@x-tiled-to-vebox-yf-tiled:
- shard-kbl: NOTRUN -> [SKIP][18] ([fdo#109271]) +192 similar issues
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@gem_render_copy@x-tiled-to-vebox-yf-tiled.html
* igt@gem_render_copy@y-tiled-to-vebox-linear:
- shard-iclb: NOTRUN -> [SKIP][19] ([i915#768]) +2 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@gem_render_copy@y-tiled-to-vebox-linear.html
* igt@gem_softpin@evict-single-offset:
- shard-kbl: NOTRUN -> [FAIL][20] ([i915#4171])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@gem_softpin@evict-single-offset.html
* igt@gem_userptr_blits@coherency-unsync:
- shard-tglb: NOTRUN -> [SKIP][21] ([i915#3297])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@gem_userptr_blits@coherency-unsync.html
- shard-iclb: NOTRUN -> [SKIP][22] ([i915#3297])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@gem_userptr_blits@coherency-unsync.html
* igt@gem_userptr_blits@dmabuf-sync:
- shard-glk: NOTRUN -> [SKIP][23] ([fdo#109271] / [i915#3323])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk4/igt@gem_userptr_blits@dmabuf-sync.html
* igt@gem_workarounds@suspend-resume:
- shard-apl: [PASS][24] -> [DMESG-WARN][25] ([i915#180]) +2 similar issues
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl7/igt@gem_workarounds@suspend-resume.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl7/igt@gem_workarounds@suspend-resume.html
* igt@gen7_exec_parse@load-register-reg:
- shard-iclb: NOTRUN -> [SKIP][26] ([fdo#109289]) +2 similar issues
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb8/igt@gen7_exec_parse@load-register-reg.html
* igt@gen9_exec_parse@valid-registers:
- shard-iclb: NOTRUN -> [SKIP][27] ([i915#2856]) +1 similar issue
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@gen9_exec_parse@valid-registers.html
* igt@i915_pm_dc@dc3co-vpb-simulation:
- shard-apl: NOTRUN -> [SKIP][28] ([fdo#109271] / [i915#658])
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl2/igt@i915_pm_dc@dc3co-vpb-simulation.html
* igt@i915_pm_rpm@modeset-non-lpsp-stress:
- shard-tglb: NOTRUN -> [SKIP][29] ([fdo#111644] / [i915#1397] / [i915#2411])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@i915_pm_rpm@modeset-non-lpsp-stress.html
- shard-iclb: NOTRUN -> [SKIP][30] ([fdo#110892])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@i915_pm_rpm@modeset-non-lpsp-stress.html
* igt@i915_query@test-query-geometry-subslices:
- shard-tglb: NOTRUN -> [SKIP][31] ([i915#5723])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@i915_query@test-query-geometry-subslices.html
- shard-iclb: NOTRUN -> [SKIP][32] ([i915#5723])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@i915_query@test-query-geometry-subslices.html
* igt@i915_suspend@sysfs-reader:
- shard-apl: NOTRUN -> [DMESG-WARN][33] ([i915#180]) +1 similar issue
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl8/igt@i915_suspend@sysfs-reader.html
- shard-kbl: NOTRUN -> [DMESG-WARN][34] ([i915#180])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@i915_suspend@sysfs-reader.html
* igt@kms_atomic@atomic_plane_damage:
- shard-iclb: NOTRUN -> [SKIP][35] ([i915#4765])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@kms_atomic@atomic_plane_damage.html
* igt@kms_big_fb@4-tiled-addfb-size-offset-overflow:
- shard-tglb: NOTRUN -> [SKIP][36] ([i915#5286]) +5 similar issues
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_big_fb@4-tiled-addfb-size-offset-overflow.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-iclb: NOTRUN -> [SKIP][37] ([i915#5286]) +4 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_big_fb@x-tiled-16bpp-rotate-270:
- shard-tglb: NOTRUN -> [SKIP][38] ([fdo#111614]) +7 similar issues
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_big_fb@x-tiled-16bpp-rotate-270.html
* igt@kms_big_fb@x-tiled-8bpp-rotate-270:
- shard-iclb: NOTRUN -> [SKIP][39] ([fdo#110725] / [fdo#111614]) +4 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0:
- shard-apl: NOTRUN -> [SKIP][40] ([fdo#109271]) +154 similar issues
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl3/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html
- shard-iclb: NOTRUN -> [SKIP][41] ([fdo#110723]) +2 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html
* igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_gen12_rc_ccs_cc:
- shard-glk: NOTRUN -> [SKIP][42] ([fdo#109271] / [i915#3886]) +4 similar issues
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html
- shard-iclb: NOTRUN -> [SKIP][43] ([fdo#109278] / [i915#3886]) +6 similar issues
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc:
- shard-kbl: NOTRUN -> [SKIP][44] ([fdo#109271] / [i915#3886]) +11 similar issues
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc:
- shard-apl: NOTRUN -> [SKIP][45] ([fdo#109271] / [i915#3886]) +8 similar issues
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl4/igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs:
- shard-tglb: NOTRUN -> [SKIP][46] ([i915#3689] / [i915#3886]) +2 similar issues
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-b-crc-sprite-planes-basic-yf_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][47] ([fdo#111615] / [i915#3689]) +1 similar issue
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-yf_tiled_ccs.html
* igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][48] ([i915#3689]) +5 similar issues
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb1/igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_ccs.html
* igt@kms_cdclk@mode-transition:
- shard-tglb: NOTRUN -> [SKIP][49] ([i915#3742])
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@kms_cdclk@mode-transition.html
* igt@kms_chamelium@dp-hpd-storm:
- shard-iclb: NOTRUN -> [SKIP][50] ([fdo#109284] / [fdo#111827]) +5 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_chamelium@dp-hpd-storm.html
* igt@kms_chamelium@hdmi-hpd-storm:
- shard-kbl: NOTRUN -> [SKIP][51] ([fdo#109271] / [fdo#111827]) +11 similar issues
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@kms_chamelium@hdmi-hpd-storm.html
* igt@kms_chamelium@vga-hpd:
- shard-glk: NOTRUN -> [SKIP][52] ([fdo#109271] / [fdo#111827]) +5 similar issues
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk4/igt@kms_chamelium@vga-hpd.html
* igt@kms_color@pipe-d-ctm-max:
- shard-iclb: NOTRUN -> [SKIP][53] ([fdo#109278] / [i915#1149])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_color@pipe-d-ctm-max.html
* igt@kms_color_chamelium@pipe-c-ctm-red-to-blue:
- shard-snb: NOTRUN -> [SKIP][54] ([fdo#109271] / [fdo#111827]) +4 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-snb6/igt@kms_color_chamelium@pipe-c-ctm-red-to-blue.html
* igt@kms_color_chamelium@pipe-d-ctm-0-75:
- shard-apl: NOTRUN -> [SKIP][55] ([fdo#109271] / [fdo#111827]) +12 similar issues
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl3/igt@kms_color_chamelium@pipe-d-ctm-0-75.html
* igt@kms_color_chamelium@pipe-d-ctm-red-to-blue:
- shard-tglb: NOTRUN -> [SKIP][56] ([fdo#109284] / [fdo#111827]) +6 similar issues
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@kms_color_chamelium@pipe-d-ctm-red-to-blue.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-iclb: NOTRUN -> [SKIP][57] ([i915#3116])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb7/igt@kms_content_protection@dp-mst-type-1.html
- shard-tglb: NOTRUN -> [SKIP][58] ([i915#3116] / [i915#3299])
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_cursor_crc@pipe-b-cursor-32x32-sliding:
- shard-tglb: NOTRUN -> [SKIP][59] ([i915#3319]) +1 similar issue
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_cursor_crc@pipe-b-cursor-32x32-sliding.html
* igt@kms_cursor_crc@pipe-b-cursor-suspend:
- shard-kbl: [PASS][60] -> [DMESG-WARN][61] ([i915#180])
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl4/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
* igt@kms_cursor_crc@pipe-c-cursor-512x170-offscreen:
- shard-iclb: NOTRUN -> [SKIP][62] ([fdo#109278] / [fdo#109279]) +1 similar issue
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@kms_cursor_crc@pipe-c-cursor-512x170-offscreen.html
* igt@kms_cursor_crc@pipe-c-cursor-512x170-sliding:
- shard-glk: NOTRUN -> [SKIP][63] ([fdo#109271] / [i915#5691])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk5/igt@kms_cursor_crc@pipe-c-cursor-512x170-sliding.html
* igt@kms_cursor_crc@pipe-d-cursor-32x32-rapid-movement:
- shard-iclb: NOTRUN -> [SKIP][64] ([fdo#109278]) +33 similar issues
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_cursor_crc@pipe-d-cursor-32x32-rapid-movement.html
* igt@kms_cursor_crc@pipe-d-cursor-512x170-onscreen:
- shard-tglb: NOTRUN -> [SKIP][65] ([fdo#109279] / [i915#3359]) +2 similar issues
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_cursor_crc@pipe-d-cursor-512x170-onscreen.html
* igt@kms_cursor_crc@pipe-d-cursor-512x170-rapid-movement:
- shard-tglb: NOTRUN -> [SKIP][66] ([i915#3359]) +9 similar issues
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@kms_cursor_crc@pipe-d-cursor-512x170-rapid-movement.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- shard-tglb: NOTRUN -> [SKIP][67] ([i915#4103]) +1 similar issue
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size:
- shard-iclb: NOTRUN -> [SKIP][68] ([fdo#109274] / [fdo#109278]) +1 similar issue
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb8/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
- shard-glk: [PASS][69] -> [FAIL][70] ([i915#2346])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk8/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
* igt@kms_dp_tiled_display@basic-test-pattern:
- shard-iclb: NOTRUN -> [SKIP][71] ([i915#426])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@kms_dp_tiled_display@basic-test-pattern.html
* igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-4tiled:
- shard-tglb: NOTRUN -> [SKIP][72] ([i915#5287])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-4tiled.html
- shard-iclb: NOTRUN -> [SKIP][73] ([i915#5287])
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-4tiled.html
* igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled:
- shard-glk: [PASS][74] -> [FAIL][75] ([i915#1888] / [i915#5160])
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk2/igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled.html
* igt@kms_dsc@basic-dsc-enable:
- shard-iclb: NOTRUN -> [SKIP][76] ([i915#3840])
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_dsc@basic-dsc-enable.html
* igt@kms_flip@2x-absolute-wf_vblank-interruptible:
- shard-iclb: NOTRUN -> [SKIP][77] ([fdo#109274]) +3 similar issues
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@kms_flip@2x-absolute-wf_vblank-interruptible.html
* igt@kms_flip@2x-flip-vs-blocking-wf-vblank:
- shard-tglb: NOTRUN -> [SKIP][78] ([fdo#109274] / [fdo#111825]) +7 similar issues
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@kms_flip@2x-flip-vs-blocking-wf-vblank.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling:
- shard-tglb: NOTRUN -> [SKIP][79] ([i915#2587])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling.html
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-iclb: [PASS][80] -> [DMESG-WARN][81] ([i915#2867])
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-suspend.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-suspend.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-pgflip-blt:
- shard-iclb: NOTRUN -> [SKIP][82] ([fdo#109280]) +26 similar issues
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-tglb: NOTRUN -> [SKIP][83] ([i915#5439])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb3/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-move:
- shard-tglb: NOTRUN -> [SKIP][84] ([fdo#109280] / [fdo#111825]) +16 similar issues
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-move.html
* igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-cpu:
- shard-glk: NOTRUN -> [SKIP][85] ([fdo#109271]) +96 similar issues
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-cpu.html
* igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c:
- shard-tglb: NOTRUN -> [SKIP][86] ([fdo#109289])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c.html
* igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d:
- shard-kbl: NOTRUN -> [SKIP][87] ([fdo#109271] / [i915#533])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html
* igt@kms_pipe_crc_basic@hang-read-crc-pipe-d:
- shard-glk: NOTRUN -> [SKIP][88] ([fdo#109271] / [i915#533])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk7/igt@kms_pipe_crc_basic@hang-read-crc-pipe-d.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d:
- shard-apl: NOTRUN -> [SKIP][89] ([fdo#109271] / [i915#533])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl8/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d.html
* igt@kms_plane_alpha_blend@pipe-c-alpha-basic:
- shard-kbl: NOTRUN -> [FAIL][90] ([fdo#108145] / [i915#265])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl6/igt@kms_plane_alpha_blend@pipe-c-alpha-basic.html
- shard-glk: NOTRUN -> [FAIL][91] ([fdo#108145] / [i915#265])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk8/igt@kms_plane_alpha_blend@pipe-c-alpha-basic.html
* igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb:
- shard-apl: NOTRUN -> [FAIL][92] ([fdo#108145] / [i915#265])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl6/igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb.html
* igt@kms_plane_lowres@pipe-c-tiling-none:
- shard-iclb: NOTRUN -> [SKIP][93] ([i915#3536]) +1 similar issue
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@kms_plane_lowres@pipe-c-tiling-none.html
- shard-tglb: NOTRUN -> [SKIP][94] ([i915#3536]) +1 similar issue
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb3/igt@kms_plane_lowres@pipe-c-tiling-none.html
* igt@kms_plane_lowres@pipe-c-tiling-yf:
- shard-tglb: NOTRUN -> [SKIP][95] ([fdo#111615] / [fdo#112054])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_plane_lowres@pipe-c-tiling-yf.html
* igt@kms_plane_multiple@atomic-pipe-b-tiling-4:
- shard-tglb: NOTRUN -> [SKIP][96] ([i915#5288])
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@kms_plane_multiple@atomic-pipe-b-tiling-4.html
* igt@kms_plane_scaling@downscale-with-modifier-factor-0-25@pipe-d-edp-1-downscale-with-modifier:
- shard-tglb: NOTRUN -> [SKIP][97] ([i915#5176]) +7 similar issues
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb1/igt@kms_plane_scaling@downscale-with-modifier-factor-0-25@pipe-d-edp-1-downscale-with-modifier.html
* igt@kms_plane_scaling@downscale-with-pixel-format-factor-0-25@pipe-a-edp-1-downscale-with-pixel-format:
- shard-iclb: NOTRUN -> [SKIP][98] ([i915#5176]) +5 similar issues
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@kms_plane_scaling@downscale-with-pixel-format-factor-0-25@pipe-a-edp-1-downscale-with-pixel-format.html
* igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1-planes-downscale:
- shard-iclb: [PASS][99] -> [SKIP][100] ([i915#5235]) +2 similar issues
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb8/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1-planes-downscale.html
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1-planes-downscale.html
* igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-5@pipe-a-edp-1-planes-upscale-downscale:
- shard-iclb: NOTRUN -> [SKIP][101] ([i915#5235]) +2 similar issues
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-5@pipe-a-edp-1-planes-upscale-downscale.html
* igt@kms_prime@basic-crc@first-to-second:
- shard-iclb: NOTRUN -> [SKIP][102] ([i915#1836])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_prime@basic-crc@first-to-second.html
* igt@kms_psr2_sf@plane-move-sf-dmg-area:
- shard-kbl: NOTRUN -> [SKIP][103] ([fdo#109271] / [i915#658]) +1 similar issue
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@kms_psr2_sf@plane-move-sf-dmg-area.html
- shard-tglb: NOTRUN -> [SKIP][104] ([i915#2920])
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_psr2_sf@plane-move-sf-dmg-area.html
* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-iclb: [PASS][105] -> [SKIP][106] ([fdo#109642] / [fdo#111068] / [i915#658])
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb2/igt@kms_psr2_su@frontbuffer-xrgb8888.html
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@kms_psr2_su@frontbuffer-xrgb8888.html
* igt@kms_psr2_su@page_flip-nv12:
- shard-tglb: NOTRUN -> [SKIP][107] ([i915#1911])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@kms_psr2_su@page_flip-nv12.html
- shard-glk: NOTRUN -> [SKIP][108] ([fdo#109271] / [i915#658])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk8/igt@kms_psr2_su@page_flip-nv12.html
- shard-iclb: NOTRUN -> [SKIP][109] ([fdo#109642] / [fdo#111068] / [i915#658])
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@kms_psr2_su@page_flip-nv12.html
* igt@kms_psr@psr2_primary_mmap_cpu:
- shard-iclb: NOTRUN -> [SKIP][110] ([fdo#109441]) +2 similar issues
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb7/igt@kms_psr@psr2_primary_mmap_cpu.html
* igt@kms_psr@psr2_primary_mmap_gtt:
- shard-tglb: NOTRUN -> [FAIL][111] ([i915#132] / [i915#3467]) +3 similar issues
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@kms_psr@psr2_primary_mmap_gtt.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270:
- shard-tglb: NOTRUN -> [SKIP][112] ([fdo#111615]) +3 similar issues
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html
* igt@kms_setmode@invalid-clone-single-crtc-stealing:
- shard-iclb: NOTRUN -> [SKIP][113] ([i915#3555]) +1 similar issue
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb8/igt@kms_setmode@invalid-clone-single-crtc-stealing.html
- shard-tglb: NOTRUN -> [SKIP][114] ([i915#3555])
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_setmode@invalid-clone-single-crtc-stealing.html
* igt@kms_writeback@writeback-pixel-formats:
- shard-kbl: NOTRUN -> [SKIP][115] ([fdo#109271] / [i915#2437])
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl6/igt@kms_writeback@writeback-pixel-formats.html
- shard-tglb: NOTRUN -> [SKIP][116] ([i915#2437])
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@kms_writeback@writeback-pixel-formats.html
* igt@nouveau_crc@pipe-b-ctx-flip-detection:
- shard-tglb: NOTRUN -> [SKIP][117] ([i915#2530]) +3 similar issues
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb3/igt@nouveau_crc@pipe-b-ctx-flip-detection.html
* igt@nouveau_crc@pipe-b-source-outp-complete:
- shard-iclb: NOTRUN -> [SKIP][118] ([i915#2530]) +3 similar issues
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb7/igt@nouveau_crc@pipe-b-source-outp-complete.html
* igt@prime_nv_api@nv_i915_import_twice_check_flink_name:
- shard-iclb: NOTRUN -> [SKIP][119] ([fdo#109291]) +4 similar issues
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@prime_nv_api@nv_i915_import_twice_check_flink_name.html
* igt@prime_nv_pcopy@test1_macro:
- shard-tglb: NOTRUN -> [SKIP][120] ([fdo#109291]) +1 similar issue
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@prime_nv_pcopy@test1_macro.html
* igt@prime_vgem@fence-flip-hang:
- shard-iclb: NOTRUN -> [SKIP][121] ([fdo#109295])
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@prime_vgem@fence-flip-hang.html
* igt@prime_vgem@fence-write-hang:
- shard-tglb: NOTRUN -> [SKIP][122] ([fdo#109295])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@prime_vgem@fence-write-hang.html
* igt@sysfs_clients@create:
- shard-glk: NOTRUN -> [SKIP][123] ([fdo#109271] / [i915#2994]) +3 similar issues
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@sysfs_clients@create.html
* igt@sysfs_clients@fair-0:
- shard-apl: NOTRUN -> [SKIP][124] ([fdo#109271] / [i915#2994]) +2 similar issues
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl6/igt@sysfs_clients@fair-0.html
* igt@sysfs_clients@fair-3:
- shard-kbl: NOTRUN -> [SKIP][125] ([fdo#109271] / [i915#2994]) +3 similar issues
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@sysfs_clients@fair-3.html
- shard-tglb: NOTRUN -> [SKIP][126] ([i915#2994]) +1 similar issue
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@sysfs_clients@fair-3.html
* igt@sysfs_clients@fair-7:
- shard-iclb: NOTRUN -> [SKIP][127] ([i915#2994]) +1 similar issue
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb8/igt@sysfs_clients@fair-7.html
#### Possible fixes ####
* igt@gem_ctx_isolation@preservation-s3@rcs0:
- shard-kbl: [INCOMPLETE][128] ([i915#794]) -> [PASS][129]
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl4/igt@gem_ctx_isolation@preservation-s3@rcs0.html
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl1/igt@gem_ctx_isolation@preservation-s3@rcs0.html
* igt@gem_eio@kms:
- shard-tglb: [FAIL][130] ([i915#5784]) -> [PASS][131]
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-tglb1/igt@gem_eio@kms.html
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@gem_eio@kms.html
* igt@gem_eio@reset-stress:
- {shard-dg1}: [FAIL][132] ([i915#5784]) -> [PASS][133]
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-dg1-15/igt@gem_eio@reset-stress.html
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-dg1-18/igt@gem_eio@reset-stress.html
* igt@gem_eio@unwedge-stress:
- {shard-tglu}: [TIMEOUT][134] ([i915#3063]) -> [PASS][135]
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-tglu-1/igt@gem_eio@unwedge-stress.html
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglu-6/igt@gem_eio@unwedge-stress.html
* igt@gem_exec_fair@basic-deadline:
- shard-kbl: [FAIL][136] ([i915#2846]) -> [PASS][137]
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl1/igt@gem_exec_fair@basic-deadline.html
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl1/igt@gem_exec_fair@basic-deadline.html
* igt@gem_exec_fair@basic-none-rrul@rcs0:
- shard-kbl: [FAIL][138] ([i915#2842]) -> [PASS][139]
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl1/igt@gem_exec_fair@basic-none-rrul@rcs0.html
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl3/igt@gem_exec_fair@basic-none-rrul@rcs0.html
* igt@gem_exec_fair@basic-none-share@rcs0:
- shard-glk: [FAIL][140] ([i915#2842]) -> [PASS][141]
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk3/igt@gem_exec_fair@basic-none-share@rcs0.html
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@gem_exec_fair@basic-none-share@rcs0.html
* igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl: [FAIL][142] ([i915#2842]) -> [PASS][143]
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl3/igt@gem_exec_fair@basic-none-solo@rcs0.html
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl3/igt@gem_exec_fair@basic-none-solo@rcs0.html
* igt@gem_exec_flush@basic-wb-pro-default:
- shard-snb: [SKIP][144] ([fdo#109271]) -> [PASS][145]
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-snb6/igt@gem_exec_flush@basic-wb-pro-default.html
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-snb7/igt@gem_exec_flush@basic-wb-pro-default.html
* igt@gem_exec_whisper@basic-queues-forked-all:
- shard-glk: [DMESG-WARN][146] ([i915#118]) -> [PASS][147]
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk3/igt@gem_exec_whisper@basic-queues-forked-all.html
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@gem_exec_whisper@basic-queues-forked-all.html
* igt@gem_workarounds@suspend-resume-context:
- {shard-dg1}: [FAIL][148] ([fdo#103375]) -> [PASS][149] +1 similar issue
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-dg1-17/igt@gem_workarounds@suspend-resume-context.html
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-dg1-18/igt@gem_workarounds@suspend-resume-context.html
* igt@i915_pm_dc@dc6-dpms:
- shard-iclb: [FAIL][150] ([i915#454]) -> [PASS][151] +1 similar issue
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_dc@dc9-dpms:
- shard-apl: [SKIP][152] ([fdo#109271]) -> [PASS][153]
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl6/igt@i915_pm_dc@dc9-dpms.html
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl6/igt@i915_pm_dc@dc9-dpms.html
* igt@kms_cursor_crc@pipe-b-cursor-suspend:
- shard-apl: [DMESG-WARN][154] ([i915#180]) -> [PASS][155]
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl8/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl1/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
* igt@kms_cursor_crc@pipe-c-cursor-suspend:
- shard-kbl: [DMESG-WARN][156] ([i915#180]) -> [PASS][157] +3 similar issues
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl3/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
- shard-iclb: [FAIL][158] ([i915#2346]) -> [PASS][159]
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
- shard-apl: [FAIL][160] ([i915#2346] / [i915#533]) -> [PASS][161]
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling:
- shard-iclb: [SKIP][162] ([i915#3701]) -> [PASS][163]
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb7/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite:
- shard-glk: [FAIL][164] ([i915#1888] / [i915#2546]) -> [PASS][165]
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite.html
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite.html
* igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-b-edp-1-scaler-with-clipping-clamping:
- shard-iclb: [SKIP][166] ([i915#5176]) -> [PASS][167] +1 similar issue
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb3/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-b-edp-1-scaler-with-clipping-clamping.html
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-b-edp-1-scaler-with-clipping-clamping.html
* igt@kms_psr@psr2_primary_blt:
- shard-iclb: [SKIP][168] ([fdo#109441]) -> [PASS][169]
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb8/igt@kms_psr@psr2_primary_blt.html
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_psr@psr2_primary_blt.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-tglb: [SKIP][170] ([i915#5519]) -> [PASS][171]
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-tglb7/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
* igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend:
- shard-tglb: [INCOMPLETE][172] -> [PASS][173]
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-tglb1/igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend.html
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend.html
* igt@perf@non-zero-reason:
- shard-glk: [TIMEOUT][174] -> [PASS][175] +1 similar issue
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk8/igt@perf@non-zero-reason.html
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk8/igt@perf@non-zero-reason.html
* igt@perf_pmu@busy-double-start@vecs0:
- {shard-dg1}: [FAIL][176] ([i915#4349]) -> [PASS][177]
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-dg1-16/igt@perf_pmu@busy-double-start@vecs0.html
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-dg1-13/igt@perf_pmu@busy-double-start@vecs0.html
#### Warnings ####
* igt@gem_exec_balancer@parallel-ordering:
- shard-iclb: [SKIP][178] ([i915#4525]) -> [DMESG-FAIL][179] ([i915#5614])
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb8/igt@gem_exec_balancer@parallel-ordering.html
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@gem_exec_balancer@parallel-ordering.html
* igt@gem_exec_balancer@parallel-out-fence:
- shard-iclb: [DMESG-WARN][180] ([i915#5614]) -> [SKIP][181] ([i915#4525]) +1 similar issue
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb1/igt@gem_exec_balancer@parallel-out-fence.html
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@gem_exec_balancer@parallel-out-fence.html
* igt@kms_color@pipe-d-legacy-gamma:
- shard-glk: [TIMEOUT][182] -> [SKIP][183] ([fdo#109271]) +2 similar issues
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk8/igt@kms_color@pipe-d-legacy-gamma.html
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk1/igt@kms_color@pipe-d-legacy-gamma.html
* igt@kms_flip@flip-vs-suspend@c-dp1:
- shard-kbl: [DMESG-WARN][184] ([i915#180]) -> [INCOMPLETE][185] ([i915#3614])
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl7/igt@kms_flip@flip-vs-suspend@c-dp1.html
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl3/igt@kms_flip@flip-vs-suspend@c-dp1.html
* igt@kms_psr2_su@page_flip-p010:
- shard-iclb: [SKIP][186] ([fdo#109642] / [fdo#111068] / [i915#658]) -> [FAIL][187] ([i915#5939])
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb6/igt@kms_psr2_su@page_flip-p010.html
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_psr2_su@page_flip-p010.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#110542]: https://bugs.freedesktop.org/show_bug.cgi?id=110542
[fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
[fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
[fdo#110892]: https://bugs.freedesktop.org/show_bug.cgi?id=110892
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
[fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
[fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
[fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054
[i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
[i915#1149]: https://gitlab.freedesktop.org/drm/intel/issues/1149
[i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
[i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
[i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
[i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
[i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
[i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
[i915#1911]: https://gitlab.freedesktop.org/drm/intel/issues/1911
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530
[i915#2546]: https://gitlab.freedesktop.org/drm/intel/issues/2546
[i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
[i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
[i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
[i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
[i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
[i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
[i915#3063]: https://gitlab.freedesktop.org/drm/intel/issues/3063
[i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
[i915#3319]: https://gitlab.freedesktop.org/drm/intel/issues/3319
[i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323
[i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
[i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
[i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
[i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
[i915#3536]: https://gitlab.freedesktop.org/drm/intel/issues/3536
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3614]: https://gitlab.freedesktop.org/drm/intel/issues/3614
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
[i915#3701]: https://gitlab.freedesktop.org/drm/intel/issues/3701
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
[i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
[i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
[i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
[i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4765]: https://gitlab.freedesktop.org/drm/intel/issues/4765
[i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
[i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
[i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
[i915#4842]: https://gitlab.freedesktop.org/drm/intel/issues/4842
[i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
[i915#4853]: https://gitlab.freedesktop.org/drm/intel/issues/4853
[i915#4855]: https://gitlab.freedesktop.org/drm/intel/issues/4855
[i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
[i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
[i915#4886]: https://gitlab.freedesktop.org/drm/intel/issues/4886
[i915#4893]: https://gitlab.freedesktop.org/drm/intel/issues/4893
[i915#4958]: https://gitlab.freedesktop.org/drm/intel/issues/4958
[i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
[i915#5076]: https://gitlab.freedesktop.org/drm/intel/issues/5076
[i915#5160]: https://gitlab.freedesktop.org/drm/intel/issues/5160
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5182]: https://gitlab.freedesktop.org/drm/intel/issues/5182
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5257]: https://gitlab.freedesktop.org/drm/intel/issues/5257
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287
[i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
[i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
[i915#5303]: https://gitlab.freedesktop.org/drm/intel/issues/5303
[i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
[i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
[i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
[i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
[i915#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
[i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
[i915#5614]: https://gitlab.freedesktop.org/drm/intel/issues/5614
[i915#5691]: https://gitlab.freedesktop.org/drm/intel/issues/5691
[i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
[i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
[i915#5939]: https://gitlab.freedesktop.org/drm/intel/issues/5939
[i915#6029]: https://gitlab.freedesktop.org/drm/intel/issues/6029
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
[i915#794]: https://gitlab.freedesktop.org/drm/intel/issues/794
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_6480 -> IGTPW_7140
* Piglit: piglit_4509 -> None
CI-20190529: 20190529
CI_DRM_11675: c31582c636f4c6ac8c0f822c39b250db2c5cd437 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_7140: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/index.html
IGT_6480: 40ee6f52ac54858fa857fcdef52c0c791abf9344 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/index.html
[-- Attachment #2: Type: text/html, Size: 61009 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup
2022-05-19 6:25 ` [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Modem, Bhanuprakash
@ 2022-05-24 16:44 ` Sharma, Swati2
2022-05-25 5:17 ` Modem, Bhanuprakash
0 siblings, 1 reply; 6+ messages in thread
From: Sharma, Swati2 @ 2022-05-24 16:44 UTC (permalink / raw)
To: Modem, Bhanuprakash, igt-dev; +Cc: Patnana Venkata Sai
Hi Bhanu,
I have addressed all review comments except last one.
XRGB8888-dsc-compressions is specific to display 13; so we need to
keep check there only.
Few patch floated having lib changes and kms dsc cleanup changes.
https://patchwork.freedesktop.org/patch/487140/
Please review.
On 19-May-22 11:55 AM, Modem, Bhanuprakash wrote:
> Hi Swati,
>
> Overall, this patch looks good to me. I have dropped few minor comments
> to be addressed inline.
>
> On Thu-19-05-2022 11:02 am, Swati Sharma wrote:
>> Remove redundant code and before starting the subtest,
>> clean up the states to default by igt_display_reset().
>> Few minor fixes in indentation. Added subtests description.
>>
>> v2: -minor mistake in subtest name
>> -commit was missing after reset, added
>> v3: -fixed styling error
>> -replaced drm calls with igt wrappers
>> v4: -added igt_display_require_output() in igt_fixture
>> -modularized code, added func() for checks
>> -added func() to get highest mode
>>
>> Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
>> Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
>> ---
>> lib/igt_kms.c | 1 -
>> tests/i915/kms_dsc.c | 263 +++++++++++++++++++++++--------------------
>> 2 files changed, 139 insertions(+), 125 deletions(-)
>>
>> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
>> index 7838ff28..50a965ad 100644
>> --- a/lib/igt_kms.c
>> +++ b/lib/igt_kms.c
>> @@ -5304,7 +5304,6 @@ bool igt_is_dsc_supported(int drmfd,
>> drmModeConnector *connector)
>> */
>> bool igt_is_fec_supported(int drmfd, drmModeConnector *connector)
>> {
>> -
>> return check_dsc_debugfs(drmfd, connector, "FEC_Sink_Support:
>> yes");
>> }
>> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
>> index 22d2216e..3adca600 100644
>> --- a/tests/i915/kms_dsc.c
>> +++ b/tests/i915/kms_dsc.c
>> @@ -44,13 +44,16 @@
>> #include <fcntl.h>
>> #include <termios.h>
>> -/* currently dsc compression is verifying on 8bpc frame only */
>> +IGT_TEST_DESCRIPTION("Test to validate display stream compression");
>> +
>> +#define HDISPLAY_5K 5120
>> +
>> +/* currently dsc is verifed on 8bpc frame only */
>> #define XRGB8888_DRM_FORMAT_MIN_BPP 8
>> -enum dsc_test_type
>> -{
>> - test_basic_dsc_enable,
>> - test_dsc_compression_bpp
>> +enum dsc_test_type {
>> + TEST_BASIC_DSC_ENABLE,
>> + TEST_DSC_COMPRESSION_BPP
>> };
>> typedef struct {
>> @@ -59,9 +62,6 @@ typedef struct {
>> igt_display_t display;
>> struct igt_fb fb_test_pattern;
>> igt_output_t *output;
>> - int mode_valid;
>> - drmModeEncoder *encoder;
>> - int crtc;
>> int compression_bpp;
>> int n_pipes;
>> enum pipe pipe;
>> @@ -80,9 +80,9 @@ static void force_dsc_enable(data_t *data)
>> {
>> int ret;
>> - igt_debug ("Forcing DSC enable on %s\n", data->conn_name);
>> + igt_debug("Forcing DSC enable on %s\n", data->conn_name);
>> ret = igt_force_dsc_enable(data->drm_fd,
>> - data->output->config.connector);
>> + data->output->config.connector);
>> igt_assert_f(ret > 0, "debugfs_write failed");
>> }
>> @@ -93,8 +93,8 @@ static void force_dsc_enable_bpp(data_t *data)
>> igt_debug("Forcing DSC BPP to %d on %s\n",
>> data->compression_bpp, data->conn_name);
>> ret = igt_force_dsc_enable_bpp(data->drm_fd,
>> - data->output->config.connector,
>> - data->compression_bpp);
>> + data->output->config.connector,
>> + data->compression_bpp);
>> igt_assert_f(ret > 0, "debugfs_write failed");
>> }
>> @@ -105,7 +105,7 @@ static void save_force_dsc_en(data_t *data)
>> data->output->config.connector);
>> force_dsc_restore_fd =
>> igt_get_dsc_debugfs_fd(data->drm_fd,
>> - data->output->config.connector);
>> + data->output->config.connector);
>> igt_assert(force_dsc_restore_fd >= 0);
>> }
>> @@ -121,19 +121,6 @@ static void restore_force_dsc_en(void)
>> force_dsc_restore_fd = -1;
>> }
>> -static void test_cleanup(data_t *data)
>> -{
>> - igt_plane_t *primary;
>> -
>> - if (data->output) {
>> - primary = igt_output_get_plane_type(data->output,
>> - DRM_PLANE_TYPE_PRIMARY);
>> - igt_plane_set_fb(primary, NULL);
>> - igt_output_set_pipe(data->output, PIPE_NONE);
>> - igt_display_commit(&data->display);
>> - }
>> -}
>> -
>> static void kms_dsc_exit_handler(int sig)
>> {
>> restore_force_dsc_en();
>> @@ -159,29 +146,26 @@ static int sort_drm_modes(const void *a, const
>> void *b)
>> return (mode1->clock < mode2->clock) - (mode2->clock <
>> mode1->clock);
>> }
>> -static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
>> +static drmModeModeInfo *get_highres_mode(drmModeConnector *connector)
>> {
>> - drmModeConnector *connector;
>> - igt_output_t *output;
>> -
>> - connector = drmModeGetConnectorCurrent(data->drm_fd,
>> - drmConnector);
>> - if (connector->connection != DRM_MODE_CONNECTED)
>> - return false;
>> -
>> - output = igt_output_from_connector(&data->display, connector);
>> + drmModeModeInfo *highest_mode = NULL;
>> - /*
>> - * As dsc supports >= 5k modes, we need to suppress lower
>> - * resolutions.
>> - */
>> - qsort(output->config.connector->modes,
>> - output->config.connector->count_modes,
>> + qsort(connector->modes,
>> + connector->count_modes,
>> sizeof(drmModeModeInfo),
>> sort_drm_modes);
>> - if (output->config.connector->connector_type ==
>> DRM_MODE_CONNECTOR_DisplayPort &&
>> - output->config.connector->modes[0].hdisplay < 5120)
>> - return NULL;
>> +
>> + highest_mode = &connector->modes[0];
>> +
>> + return highest_mode;
>> +}
>> +
>> +static bool check_dsc_on_connector(data_t *data, igt_output_t *output)
>> +{
>> + drmModeConnector *connector = output->config.connector;
>> +
>> + if (connector->connection != DRM_MODE_CONNECTED)
>> + return false;
>
> This check is redundant, for_each_pipe_with_valid_output() is already
> doing this check.
>
>> sprintf(data->conn_name, "%s-%d",
>
> Please drop data->conn_name, instead please use data->output->name;
>
>> kmstest_connector_type_str(connector->connector_type),
>> @@ -192,168 +176,199 @@ static bool check_dsc_on_connector(data_t
>> *data, uint32_t drmConnector)
>> data->conn_name);
>> return false;
>> }
>> +
>> if (is_external_panel(connector) &&
>> !igt_is_fec_supported(data->drm_fd, connector)) {
>> igt_debug("DSC cannot be enabled without FEC on %s\n",
>> data->conn_name);
>> return false;
>> }
>> +
>> data->output = output;
>
> This could be moved to test_dsc()
>
>> return true;
>> }
>> -/*
>> - * Re-probe connectors and do a modeset with DSC
>> - *
>> - */
>> -static void update_display(data_t *data, enum dsc_test_type test_type)
>> +static bool check_big_joiner_test_constraint(data_t *data,
>> igt_output_t *output,
>> + enum dsc_test_type test_type)
>> +{
>> + drmModeConnector *connector = output->config.connector;
>> + drmModeModeInfo *mode = get_highres_mode(connector);
>> +
>> + if (test_type == TEST_DSC_COMPRESSION_BPP &&
>> + mode->hdisplay >= HDISPLAY_5K) {
>> + igt_debug("Bigjoiner does not support force bpp\n");
>> + return false;
>> + }
>> +
>> + return true;
>> +}
>> +
>> +static bool check_big_joiner_pipe_constraint(data_t *data,
>> igt_output_t *output,
>> + enum pipe pipe)
>> +{
>> + drmModeConnector *connector = output->config.connector;
>> + drmModeModeInfo *mode = get_highres_mode(connector);
>> +
>> + if (mode->hdisplay >= HDISPLAY_5K &&
>> + pipe == (data->n_pipes - 1 )) {
>> + igt_debug("pipe-%s not supported due to bigjoiner limitation\n",
>> + kmstest_pipe_name(pipe));
>> + return false;
>> + }
>> +
>> + return true;
>> +}
>> +
>> +static bool check_dp_gen11_constraint(data_t *data, igt_output_t
>> *output, enum pipe pipe)
>> +{
>> + uint32_t devid = intel_get_drm_devid(data->drm_fd);
>> + drmModeConnector *connector = output->config.connector;
>> +
>> + if ((connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) &&
>> + (pipe == PIPE_A) && IS_GEN11(devid)) {
>> + igt_debug("DSC not supported on pipe A on external DP in
>> gen11 platforms\n");
>> + return false;
>> + }
>> +
>> + return true;
>> +}
>> +/* re-probe connectors and do a modeset with DSC */
>> +static void update_display(data_t *data, igt_output_t *output, enum
>> pipe pipe,
>> + enum dsc_test_type test_type)
>> {
>> bool enabled;
>> igt_plane_t *primary;
>> + drmModeModeInfo *mode;
>> + igt_display_t *display = &data->display;
>> + drmModeConnector *connector = data->output->config.connector;
>> - /* Disable the output first */
>> - igt_output_set_pipe(data->output, PIPE_NONE);
>> - igt_display_commit(&data->display);
>> + /* sanitize the state before starting the subtest. */
>> + igt_display_reset(display);
>> + igt_display_commit(display);
>> igt_debug("DSC is supported on %s\n", data->conn_name);
>> save_force_dsc_en(data);
>> force_dsc_enable(data);
>> - if (test_type == test_dsc_compression_bpp) {
>> +
>> + if (test_type == TEST_DSC_COMPRESSION_BPP) {
>> igt_debug("Trying to set BPP to %d\n", data->compression_bpp);
>> force_dsc_enable_bpp(data);
>> }
>> - igt_output_set_pipe(data->output, data->pipe);
>> - qsort(data->output->config.connector->modes,
>> - data->output->config.connector->count_modes,
>> - sizeof(drmModeModeInfo),
>> - sort_drm_modes);
>> - igt_output_override_mode(data->output,
>> &data->output->config.connector->modes[0]);
>> + igt_output_set_pipe(data->output, pipe);
>> +
>> + mode = get_highres_mode(connector);
>> + igt_require(mode != NULL);
>> + igt_output_override_mode(data->output, mode);
>> +
>> primary = igt_output_get_plane_type(data->output,
>> DRM_PLANE_TYPE_PRIMARY);
>> + igt_create_pattern_fb(data->drm_fd,
>> + mode->hdisplay,
>> + mode->vdisplay,
>> + DRM_FORMAT_XRGB8888,
>> + DRM_FORMAT_MOD_LINEAR,
>> + &data->fb_test_pattern);
>> - /* Now set the output to the desired mode */
>> igt_plane_set_fb(primary, &data->fb_test_pattern);
>> igt_display_commit(&data->display);
>> /*
>> - * Until we have CRC check support, manually check if RGB test
>> + * until we have CRC check support, manually check if RGB test
>> * pattern has no corruption.
>> */
>> manual("RGB test pattern without corruption");
>> - enabled = igt_is_dsc_enabled(data->drm_fd,
>> - data->output->config.connector);
>> + enabled = igt_is_dsc_enabled(data->drm_fd, connector);
>> restore_force_dsc_en();
>> igt_debug("Reset compression BPP\n");
>> data->compression_bpp = 0;
>> force_dsc_enable_bpp(data);
>> igt_assert_f(enabled,
>> - "Default DSC enable failed on Connector: %s Pipe: %s\n",
>> + "Default DSC enable failed on connector: %s pipe: %s\n",
>> data->conn_name,
>> - kmstest_pipe_name(data->pipe));
>> + kmstest_pipe_name(pipe));
>> +
>> + igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>> + igt_plane_set_fb(primary, NULL);
>> + igt_output_set_pipe(data->output, PIPE_NONE);
>
> Please do commit here.
>
>> }
>> -static void run_test(data_t *data, enum dsc_test_type test_type)
>> +static void test_dsc(data_t *data, enum dsc_test_type test_type)
>> {
>> + igt_display_t *display = &data->display;
>> + igt_output_t *output;
>> enum pipe pipe;
>> char test_name[10];
>> - igt_skip_on_f(test_type == test_dsc_compression_bpp &&
>> - data->output->config.connector->modes[0].hdisplay >= 5120,
>> - "bigjoiner does not support force bpp\n");
>> -
>> - igt_create_pattern_fb(data->drm_fd,
>> - data->output->config.connector->modes[0].hdisplay,
>> - data->output->config.connector->modes[0].vdisplay,
>> - DRM_FORMAT_XRGB8888,
>> - DRM_FORMAT_MOD_LINEAR,
>> - &data->fb_test_pattern);
>> + for_each_pipe_with_valid_output(display, pipe, output) {
>> + if (!check_dsc_on_connector(data, output))
>> + continue;
>> - for_each_pipe(&data->display, pipe) {
>> - uint32_t devid = intel_get_drm_devid(data->drm_fd);
>> + if (!check_big_joiner_test_constraint(data, output, test_type))
>> + continue;
>> - if (data->output->config.connector->connector_type ==
>> DRM_MODE_CONNECTOR_DisplayPort &&
>> - pipe == PIPE_A && IS_GEN11(devid)) {
>> - igt_debug("DSC not supported on Pipe A on external DP in
>> Gen11 platforms\n");
>> + if (!check_dp_gen11_constraint(data, output, pipe))
>> continue;
>> - }
>> - snprintf(test_name, sizeof(test_name), "-%dbpp",
>> data->compression_bpp);
>> - if (!igt_pipe_connector_valid(pipe, data->output))
>> + if (!check_big_joiner_pipe_constraint(data, output, pipe))
>> continue;
>> - igt_dynamic_f("%s-pipe-%s%s", data->output->name,
>> - kmstest_pipe_name(pipe),
>> - (test_type == test_dsc_compression_bpp) ?
>> - test_name : "") {
>> - data->pipe = pipe;
>> -
>> igt_skip_on_f((data->output->config.connector->modes[0].hdisplay >=
>> 5120) &&
>> - (pipe == (data->n_pipes - 1)),
>> - "pipe-%s not supported due to bigjoiner
>> limitation\n",
>> - kmstest_pipe_name(pipe));
>> - update_display(data, test_type);
>> + if (!igt_pipe_connector_valid(pipe, output))
>> + continue;
>
> This check is redundant, for_each_pipe_with_valid_output() is already
> taken care of this check.
>
>> - }
>> - if (test_type == test_dsc_compression_bpp)
>> - break;
>> + snprintf(test_name, sizeof(test_name), "-%dbpp",
>> data->compression_bpp);
>> + igt_dynamic_f("pipe-%s-%s%s", kmstest_pipe_name(pipe),
>> output->name,
>> + (test_type == TEST_DSC_COMPRESSION_BPP) ? test_name
>> : "")
>> + update_display(data, output, pipe, test_type);
>> }
>> -
>> - igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>> }
>> igt_main
>> {
>> data_t data = {};
>> - drmModeRes *res;
>> - drmModeConnector *connector = NULL;
>> - int i, j;
>> + int i;
>> +
>> igt_fixture {
>> data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
>> data.devid = intel_get_drm_devid(data.drm_fd);
>> kmstest_set_vt_graphics_mode();
>> igt_install_exit_handler(kms_dsc_exit_handler);
>> igt_display_require(&data.display, data.drm_fd);
>> - igt_require(res = drmModeGetResources(data.drm_fd));
>> + igt_display_require_output(&data.display);
>> data.n_pipes = 0;
>> for_each_pipe(&data.display, i)
>> data.n_pipes++;
>> }
>> - igt_subtest_with_dynamic("basic-dsc-enable") {
>> - for (j = 0; j < res->count_connectors; j++) {
>> - if (!check_dsc_on_connector(&data, res->connectors[j]))
>> - continue;
>> - run_test(&data, test_basic_dsc_enable);
>> - }
>> - }
>> +
>> + igt_describe("Tests basic display stream compression
>> functionality if supported "
>> + "by a connector by forcing DSC on all connectors that
>> support it "
>> + "with default parameters");
>> + igt_subtest_with_dynamic("basic-dsc-enable")
>> + test_dsc(&data, TEST_BASIC_DSC_ENABLE);
>> +
>> /* currently we are validating compression bpp on XRGB8888
>> format only */
>> + igt_describe("Tests basic display stream compression
>> functionality if supported "
>> + "by a connector by forcing DSC on all connectors that
>> support it "
>> + "with certain BPP as the output BPP for the connector");
>> igt_subtest_with_dynamic("XRGB8888-dsc-compression") {
>> uint32_t bpp_list[] = {
>> XRGB8888_DRM_FORMAT_MIN_BPP,
>> (XRGB8888_DRM_FORMAT_MIN_BPP +
>> - (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>> + (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>> (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1
>> };
>> igt_require(intel_display_ver(data.devid) >= 13);
>
> This check can be in igt_fixture?
>
> - Bhanu
>
>> - for (j = 0; j < res->count_connectors; j++) {
>> - if (!check_dsc_on_connector(&data, res->connectors[j]))
>> - continue;
>> -
>> - for (i = 0; i < ARRAY_SIZE(bpp_list); i++) {
>> - data.compression_bpp = bpp_list[i];
>> - run_test(&data, test_dsc_compression_bpp);
>> - }
>> + for (int j = 0; j < ARRAY_SIZE(bpp_list); j++) {
>> + data.compression_bpp = bpp_list[j];
>> + test_dsc(&data, TEST_DSC_COMPRESSION_BPP);
>> }
>> }
>> igt_fixture {
>> - if (connector)
>> - drmModeFreeConnector(connector);
>> - test_cleanup(&data);
>> - drmModeFreeResources(res);
>> igt_display_fini(&data.display);
>> close(data.drm_fd);
>> }
>
--
~Swati Sharma
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup
2022-05-24 16:44 ` Sharma, Swati2
@ 2022-05-25 5:17 ` Modem, Bhanuprakash
0 siblings, 0 replies; 6+ messages in thread
From: Modem, Bhanuprakash @ 2022-05-25 5:17 UTC (permalink / raw)
To: Sharma, Swati2, igt-dev; +Cc: Patnana Venkata Sai
On Tue-24-05-2022 10:14 pm, Sharma, Swati2 wrote:
> Hi Bhanu,
>
> I have addressed all review comments except last one.
> XRGB8888-dsc-compressions is specific to display 13; so we need to
> keep check there only.
Thanks Swati,
Still we can add a igt_fixture just before creating the subtest. Instead
of creating & skipping the subtest, just don't create it.
- Bhanu
>
> Few patch floated having lib changes and kms dsc cleanup changes.
> https://patchwork.freedesktop.org/patch/487140/
>
> Please review.
>
> On 19-May-22 11:55 AM, Modem, Bhanuprakash wrote:
>> Hi Swati,
>>
>> Overall, this patch looks good to me. I have dropped few minor
>> comments to be addressed inline.
>>
>> On Thu-19-05-2022 11:02 am, Swati Sharma wrote:
>>> Remove redundant code and before starting the subtest,
>>> clean up the states to default by igt_display_reset().
>>> Few minor fixes in indentation. Added subtests description.
>>>
>>> v2: -minor mistake in subtest name
>>> -commit was missing after reset, added
>>> v3: -fixed styling error
>>> -replaced drm calls with igt wrappers
>>> v4: -added igt_display_require_output() in igt_fixture
>>> -modularized code, added func() for checks
>>> -added func() to get highest mode
>>>
>>> Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
>>> Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
>>> ---
>>> lib/igt_kms.c | 1 -
>>> tests/i915/kms_dsc.c | 263 +++++++++++++++++++++++--------------------
>>> 2 files changed, 139 insertions(+), 125 deletions(-)
>>>
>>> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
>>> index 7838ff28..50a965ad 100644
>>> --- a/lib/igt_kms.c
>>> +++ b/lib/igt_kms.c
>>> @@ -5304,7 +5304,6 @@ bool igt_is_dsc_supported(int drmfd,
>>> drmModeConnector *connector)
>>> */
>>> bool igt_is_fec_supported(int drmfd, drmModeConnector *connector)
>>> {
>>> -
>>> return check_dsc_debugfs(drmfd, connector, "FEC_Sink_Support:
>>> yes");
>>> }
>>> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
>>> index 22d2216e..3adca600 100644
>>> --- a/tests/i915/kms_dsc.c
>>> +++ b/tests/i915/kms_dsc.c
>>> @@ -44,13 +44,16 @@
>>> #include <fcntl.h>
>>> #include <termios.h>
>>> -/* currently dsc compression is verifying on 8bpc frame only */
>>> +IGT_TEST_DESCRIPTION("Test to validate display stream compression");
>>> +
>>> +#define HDISPLAY_5K 5120
>>> +
>>> +/* currently dsc is verifed on 8bpc frame only */
>>> #define XRGB8888_DRM_FORMAT_MIN_BPP 8
>>> -enum dsc_test_type
>>> -{
>>> - test_basic_dsc_enable,
>>> - test_dsc_compression_bpp
>>> +enum dsc_test_type {
>>> + TEST_BASIC_DSC_ENABLE,
>>> + TEST_DSC_COMPRESSION_BPP
>>> };
>>> typedef struct {
>>> @@ -59,9 +62,6 @@ typedef struct {
>>> igt_display_t display;
>>> struct igt_fb fb_test_pattern;
>>> igt_output_t *output;
>>> - int mode_valid;
>>> - drmModeEncoder *encoder;
>>> - int crtc;
>>> int compression_bpp;
>>> int n_pipes;
>>> enum pipe pipe;
>>> @@ -80,9 +80,9 @@ static void force_dsc_enable(data_t *data)
>>> {
>>> int ret;
>>> - igt_debug ("Forcing DSC enable on %s\n", data->conn_name);
>>> + igt_debug("Forcing DSC enable on %s\n", data->conn_name);
>>> ret = igt_force_dsc_enable(data->drm_fd,
>>> - data->output->config.connector);
>>> + data->output->config.connector);
>>> igt_assert_f(ret > 0, "debugfs_write failed");
>>> }
>>> @@ -93,8 +93,8 @@ static void force_dsc_enable_bpp(data_t *data)
>>> igt_debug("Forcing DSC BPP to %d on %s\n",
>>> data->compression_bpp, data->conn_name);
>>> ret = igt_force_dsc_enable_bpp(data->drm_fd,
>>> - data->output->config.connector,
>>> - data->compression_bpp);
>>> + data->output->config.connector,
>>> + data->compression_bpp);
>>> igt_assert_f(ret > 0, "debugfs_write failed");
>>> }
>>> @@ -105,7 +105,7 @@ static void save_force_dsc_en(data_t *data)
>>> data->output->config.connector);
>>> force_dsc_restore_fd =
>>> igt_get_dsc_debugfs_fd(data->drm_fd,
>>> - data->output->config.connector);
>>> + data->output->config.connector);
>>> igt_assert(force_dsc_restore_fd >= 0);
>>> }
>>> @@ -121,19 +121,6 @@ static void restore_force_dsc_en(void)
>>> force_dsc_restore_fd = -1;
>>> }
>>> -static void test_cleanup(data_t *data)
>>> -{
>>> - igt_plane_t *primary;
>>> -
>>> - if (data->output) {
>>> - primary = igt_output_get_plane_type(data->output,
>>> - DRM_PLANE_TYPE_PRIMARY);
>>> - igt_plane_set_fb(primary, NULL);
>>> - igt_output_set_pipe(data->output, PIPE_NONE);
>>> - igt_display_commit(&data->display);
>>> - }
>>> -}
>>> -
>>> static void kms_dsc_exit_handler(int sig)
>>> {
>>> restore_force_dsc_en();
>>> @@ -159,29 +146,26 @@ static int sort_drm_modes(const void *a, const
>>> void *b)
>>> return (mode1->clock < mode2->clock) - (mode2->clock <
>>> mode1->clock);
>>> }
>>> -static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
>>> +static drmModeModeInfo *get_highres_mode(drmModeConnector *connector)
>>> {
>>> - drmModeConnector *connector;
>>> - igt_output_t *output;
>>> -
>>> - connector = drmModeGetConnectorCurrent(data->drm_fd,
>>> - drmConnector);
>>> - if (connector->connection != DRM_MODE_CONNECTED)
>>> - return false;
>>> -
>>> - output = igt_output_from_connector(&data->display, connector);
>>> + drmModeModeInfo *highest_mode = NULL;
>>> - /*
>>> - * As dsc supports >= 5k modes, we need to suppress lower
>>> - * resolutions.
>>> - */
>>> - qsort(output->config.connector->modes,
>>> - output->config.connector->count_modes,
>>> + qsort(connector->modes,
>>> + connector->count_modes,
>>> sizeof(drmModeModeInfo),
>>> sort_drm_modes);
>>> - if (output->config.connector->connector_type ==
>>> DRM_MODE_CONNECTOR_DisplayPort &&
>>> - output->config.connector->modes[0].hdisplay < 5120)
>>> - return NULL;
>>> +
>>> + highest_mode = &connector->modes[0];
>>> +
>>> + return highest_mode;
>>> +}
>>> +
>>> +static bool check_dsc_on_connector(data_t *data, igt_output_t *output)
>>> +{
>>> + drmModeConnector *connector = output->config.connector;
>>> +
>>> + if (connector->connection != DRM_MODE_CONNECTED)
>>> + return false;
>>
>> This check is redundant, for_each_pipe_with_valid_output() is already
>> doing this check.
>>
>>> sprintf(data->conn_name, "%s-%d",
>>
>> Please drop data->conn_name, instead please use data->output->name;
>>
>>> kmstest_connector_type_str(connector->connector_type),
>>> @@ -192,168 +176,199 @@ static bool check_dsc_on_connector(data_t
>>> *data, uint32_t drmConnector)
>>> data->conn_name);
>>> return false;
>>> }
>>> +
>>> if (is_external_panel(connector) &&
>>> !igt_is_fec_supported(data->drm_fd, connector)) {
>>> igt_debug("DSC cannot be enabled without FEC on %s\n",
>>> data->conn_name);
>>> return false;
>>> }
>>> +
>>> data->output = output;
>>
>> This could be moved to test_dsc()
>>
>>> return true;
>>> }
>>> -/*
>>> - * Re-probe connectors and do a modeset with DSC
>>> - *
>>> - */
>>> -static void update_display(data_t *data, enum dsc_test_type test_type)
>>> +static bool check_big_joiner_test_constraint(data_t *data,
>>> igt_output_t *output,
>>> + enum dsc_test_type test_type)
>>> +{
>>> + drmModeConnector *connector = output->config.connector;
>>> + drmModeModeInfo *mode = get_highres_mode(connector);
>>> +
>>> + if (test_type == TEST_DSC_COMPRESSION_BPP &&
>>> + mode->hdisplay >= HDISPLAY_5K) {
>>> + igt_debug("Bigjoiner does not support force bpp\n");
>>> + return false;
>>> + }
>>> +
>>> + return true;
>>> +}
>>> +
>>> +static bool check_big_joiner_pipe_constraint(data_t *data,
>>> igt_output_t *output,
>>> + enum pipe pipe)
>>> +{
>>> + drmModeConnector *connector = output->config.connector;
>>> + drmModeModeInfo *mode = get_highres_mode(connector);
>>> +
>>> + if (mode->hdisplay >= HDISPLAY_5K &&
>>> + pipe == (data->n_pipes - 1 )) {
>>> + igt_debug("pipe-%s not supported due to bigjoiner
>>> limitation\n",
>>> + kmstest_pipe_name(pipe));
>>> + return false;
>>> + }
>>> +
>>> + return true;
>>> +}
>>> +
>>> +static bool check_dp_gen11_constraint(data_t *data, igt_output_t
>>> *output, enum pipe pipe)
>>> +{
>>> + uint32_t devid = intel_get_drm_devid(data->drm_fd);
>>> + drmModeConnector *connector = output->config.connector;
>>> +
>>> + if ((connector->connector_type ==
>>> DRM_MODE_CONNECTOR_DisplayPort) &&
>>> + (pipe == PIPE_A) && IS_GEN11(devid)) {
>>> + igt_debug("DSC not supported on pipe A on external DP in
>>> gen11 platforms\n");
>>> + return false;
>>> + }
>>> +
>>> + return true;
>>> +}
>>> +/* re-probe connectors and do a modeset with DSC */
>>> +static void update_display(data_t *data, igt_output_t *output, enum
>>> pipe pipe,
>>> + enum dsc_test_type test_type)
>>> {
>>> bool enabled;
>>> igt_plane_t *primary;
>>> + drmModeModeInfo *mode;
>>> + igt_display_t *display = &data->display;
>>> + drmModeConnector *connector = data->output->config.connector;
>>> - /* Disable the output first */
>>> - igt_output_set_pipe(data->output, PIPE_NONE);
>>> - igt_display_commit(&data->display);
>>> + /* sanitize the state before starting the subtest. */
>>> + igt_display_reset(display);
>>> + igt_display_commit(display);
>>> igt_debug("DSC is supported on %s\n", data->conn_name);
>>> save_force_dsc_en(data);
>>> force_dsc_enable(data);
>>> - if (test_type == test_dsc_compression_bpp) {
>>> +
>>> + if (test_type == TEST_DSC_COMPRESSION_BPP) {
>>> igt_debug("Trying to set BPP to %d\n", data->compression_bpp);
>>> force_dsc_enable_bpp(data);
>>> }
>>> - igt_output_set_pipe(data->output, data->pipe);
>>> - qsort(data->output->config.connector->modes,
>>> - data->output->config.connector->count_modes,
>>> - sizeof(drmModeModeInfo),
>>> - sort_drm_modes);
>>> - igt_output_override_mode(data->output,
>>> &data->output->config.connector->modes[0]);
>>> + igt_output_set_pipe(data->output, pipe);
>>> +
>>> + mode = get_highres_mode(connector);
>>> + igt_require(mode != NULL);
>>> + igt_output_override_mode(data->output, mode);
>>> +
>>> primary = igt_output_get_plane_type(data->output,
>>> DRM_PLANE_TYPE_PRIMARY);
>>> + igt_create_pattern_fb(data->drm_fd,
>>> + mode->hdisplay,
>>> + mode->vdisplay,
>>> + DRM_FORMAT_XRGB8888,
>>> + DRM_FORMAT_MOD_LINEAR,
>>> + &data->fb_test_pattern);
>>> - /* Now set the output to the desired mode */
>>> igt_plane_set_fb(primary, &data->fb_test_pattern);
>>> igt_display_commit(&data->display);
>>> /*
>>> - * Until we have CRC check support, manually check if RGB test
>>> + * until we have CRC check support, manually check if RGB test
>>> * pattern has no corruption.
>>> */
>>> manual("RGB test pattern without corruption");
>>> - enabled = igt_is_dsc_enabled(data->drm_fd,
>>> - data->output->config.connector);
>>> + enabled = igt_is_dsc_enabled(data->drm_fd, connector);
>>> restore_force_dsc_en();
>>> igt_debug("Reset compression BPP\n");
>>> data->compression_bpp = 0;
>>> force_dsc_enable_bpp(data);
>>> igt_assert_f(enabled,
>>> - "Default DSC enable failed on Connector: %s Pipe: %s\n",
>>> + "Default DSC enable failed on connector: %s pipe: %s\n",
>>> data->conn_name,
>>> - kmstest_pipe_name(data->pipe));
>>> + kmstest_pipe_name(pipe));
>>> +
>>> + igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>>> + igt_plane_set_fb(primary, NULL);
>>> + igt_output_set_pipe(data->output, PIPE_NONE);
>>
>> Please do commit here.
>>
>>> }
>>> -static void run_test(data_t *data, enum dsc_test_type test_type)
>>> +static void test_dsc(data_t *data, enum dsc_test_type test_type)
>>> {
>>> + igt_display_t *display = &data->display;
>>> + igt_output_t *output;
>>> enum pipe pipe;
>>> char test_name[10];
>>> - igt_skip_on_f(test_type == test_dsc_compression_bpp &&
>>> - data->output->config.connector->modes[0].hdisplay >=
>>> 5120,
>>> - "bigjoiner does not support force bpp\n");
>>> -
>>> - igt_create_pattern_fb(data->drm_fd,
>>> - data->output->config.connector->modes[0].hdisplay,
>>> - data->output->config.connector->modes[0].vdisplay,
>>> - DRM_FORMAT_XRGB8888,
>>> - DRM_FORMAT_MOD_LINEAR,
>>> - &data->fb_test_pattern);
>>> + for_each_pipe_with_valid_output(display, pipe, output) {
>>> + if (!check_dsc_on_connector(data, output))
>>> + continue;
>>> - for_each_pipe(&data->display, pipe) {
>>> - uint32_t devid = intel_get_drm_devid(data->drm_fd);
>>> + if (!check_big_joiner_test_constraint(data, output, test_type))
>>> + continue;
>>> - if (data->output->config.connector->connector_type ==
>>> DRM_MODE_CONNECTOR_DisplayPort &&
>>> - pipe == PIPE_A && IS_GEN11(devid)) {
>>> - igt_debug("DSC not supported on Pipe A on external DP in
>>> Gen11 platforms\n");
>>> + if (!check_dp_gen11_constraint(data, output, pipe))
>>> continue;
>>> - }
>>> - snprintf(test_name, sizeof(test_name), "-%dbpp",
>>> data->compression_bpp);
>>> - if (!igt_pipe_connector_valid(pipe, data->output))
>>> + if (!check_big_joiner_pipe_constraint(data, output, pipe))
>>> continue;
>>> - igt_dynamic_f("%s-pipe-%s%s", data->output->name,
>>> - kmstest_pipe_name(pipe),
>>> - (test_type == test_dsc_compression_bpp) ?
>>> - test_name : "") {
>>> - data->pipe = pipe;
>>> - igt_skip_on_f((data->output->config.connector->modes[0].hdisplay >=
>>> 5120) &&
>>> - (pipe == (data->n_pipes - 1)),
>>> - "pipe-%s not supported due to bigjoiner
>>> limitation\n",
>>> - kmstest_pipe_name(pipe));
>>> - update_display(data, test_type);
>>> + if (!igt_pipe_connector_valid(pipe, output))
>>> + continue;
>>
>> This check is redundant, for_each_pipe_with_valid_output() is already
>> taken care of this check.
>>
>>> - }
>>> - if (test_type == test_dsc_compression_bpp)
>>> - break;
>>> + snprintf(test_name, sizeof(test_name), "-%dbpp",
>>> data->compression_bpp);
>>> + igt_dynamic_f("pipe-%s-%s%s", kmstest_pipe_name(pipe),
>>> output->name,
>>> + (test_type == TEST_DSC_COMPRESSION_BPP) ? test_name
>>> : "")
>>> + update_display(data, output, pipe, test_type);
>>> }
>>> -
>>> - igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>>> }
>>> igt_main
>>> {
>>> data_t data = {};
>>> - drmModeRes *res;
>>> - drmModeConnector *connector = NULL;
>>> - int i, j;
>>> + int i;
>>> +
>>> igt_fixture {
>>> data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
>>> data.devid = intel_get_drm_devid(data.drm_fd);
>>> kmstest_set_vt_graphics_mode();
>>> igt_install_exit_handler(kms_dsc_exit_handler);
>>> igt_display_require(&data.display, data.drm_fd);
>>> - igt_require(res = drmModeGetResources(data.drm_fd));
>>> + igt_display_require_output(&data.display);
>>> data.n_pipes = 0;
>>> for_each_pipe(&data.display, i)
>>> data.n_pipes++;
>>> }
>>> - igt_subtest_with_dynamic("basic-dsc-enable") {
>>> - for (j = 0; j < res->count_connectors; j++) {
>>> - if (!check_dsc_on_connector(&data, res->connectors[j]))
>>> - continue;
>>> - run_test(&data, test_basic_dsc_enable);
>>> - }
>>> - }
>>> +
>>> + igt_describe("Tests basic display stream compression
>>> functionality if supported "
>>> + "by a connector by forcing DSC on all connectors that
>>> support it "
>>> + "with default parameters");
>>> + igt_subtest_with_dynamic("basic-dsc-enable")
>>> + test_dsc(&data, TEST_BASIC_DSC_ENABLE);
>>> +
>>> /* currently we are validating compression bpp on XRGB8888
>>> format only */
>>> + igt_describe("Tests basic display stream compression
>>> functionality if supported "
>>> + "by a connector by forcing DSC on all connectors that
>>> support it "
>>> + "with certain BPP as the output BPP for the connector");
>>> igt_subtest_with_dynamic("XRGB8888-dsc-compression") {
>>> uint32_t bpp_list[] = {
>>> XRGB8888_DRM_FORMAT_MIN_BPP,
>>> (XRGB8888_DRM_FORMAT_MIN_BPP +
>>> - (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>>> + (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>>> (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1
>>> };
>>> igt_require(intel_display_ver(data.devid) >= 13);
>>
>> This check can be in igt_fixture?
>>
>> - Bhanu
>>
>>> - for (j = 0; j < res->count_connectors; j++) {
>>> - if (!check_dsc_on_connector(&data, res->connectors[j]))
>>> - continue;
>>> -
>>> - for (i = 0; i < ARRAY_SIZE(bpp_list); i++) {
>>> - data.compression_bpp = bpp_list[i];
>>> - run_test(&data, test_dsc_compression_bpp);
>>> - }
>>> + for (int j = 0; j < ARRAY_SIZE(bpp_list); j++) {
>>> + data.compression_bpp = bpp_list[j];
>>> + test_dsc(&data, TEST_DSC_COMPRESSION_BPP);
>>> }
>>> }
>>> igt_fixture {
>>> - if (connector)
>>> - drmModeFreeConnector(connector);
>>> - test_cleanup(&data);
>>> - drmModeFreeResources(res);
>>> igt_display_fini(&data.display);
>>> close(data.drm_fd);
>>> }
>>
>
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-05-25 5:17 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-19 5:32 [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Swati Sharma
2022-05-19 6:17 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
2022-05-19 6:25 ` [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Modem, Bhanuprakash
2022-05-24 16:44 ` Sharma, Swati2
2022-05-25 5:17 ` Modem, Bhanuprakash
2022-05-19 7:08 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.