All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t] tests/amdgpu/amd_color: check supported color prop before running tests
@ 2023-02-14 11:42 Melissa Wen
  2023-02-14 12:42 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Melissa Wen @ 2023-02-14 11:42 UTC (permalink / raw)
  To: igt-dev; +Cc: kernel-dev

If a DRM CRTC color prop is not advertised, the test should skip instead
of fail. It currently fits DCE case. The driver doesn't support user
degamma, therefore, DRM CRTC degamma properties are disabled in the
kernel driver [1]. Previously the test just fails on DCE because the
driver advertises degamma props although user degamma isn't supported by
HW. Now we can just skip the test in case of a missing color prop
support.

[1] https://lore.kernel.org/dri-devel/20221103184500.14450-1-mwen@igalia.com/

Signed-off-by: Melissa Wen <mwen@igalia.com>
---
 tests/amdgpu/amd_color.c | 36 ++++++++++++++++++++++++++----------
 1 file changed, 26 insertions(+), 10 deletions(-)

diff --git a/tests/amdgpu/amd_color.c b/tests/amdgpu/amd_color.c
index defe57bd..2dbc3dfb 100644
--- a/tests/amdgpu/amd_color.c
+++ b/tests/amdgpu/amd_color.c
@@ -196,14 +196,6 @@ static void test_init(data_t *data)
 
 	igt_output_set_pipe(data->output, data->pipe_id);
 
-	data->degamma_lut_size =
-		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT_SIZE);
-	igt_assert_lt(0, data->degamma_lut_size);
-
-	data->regamma_lut_size =
-		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_GAMMA_LUT_SIZE);
-	igt_assert_lt(0, data->regamma_lut_size);
-
 	data->w = data->mode->hdisplay;
 	data->h = data->mode->vdisplay;
 }
@@ -221,6 +213,8 @@ static void test_fini(data_t *data)
  * matrix if not passed any. The whole pipe should be in linear bypass mode
  * when all the matrices are NULL - CRCs for a linear degamma matrix and
  * a NULL one should match.
+ *
+ * This test skips on DCE because it doesn't support user degamma.
  */
 static void test_crtc_linear_degamma(data_t *data)
 {
@@ -231,6 +225,12 @@ static void test_crtc_linear_degamma(data_t *data)
 
 	test_init(data);
 
+	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT));
+
+	data->degamma_lut_size =
+		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT_SIZE);
+	igt_assert_lt(0, data->degamma_lut_size);
+
 	lut_init(&lut_linear, data->degamma_lut_size);
 	lut_gen_linear(&lut_linear, 0xffff);
 
@@ -252,6 +252,8 @@ static void test_crtc_linear_degamma(data_t *data)
 	igt_pipe_crc_collect_crc(data->pipe_crc, &new_crc);
 	igt_assert_crc_equal(&ref_crc, &new_crc);
 
+	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_DEGAMMA_LUT, NULL, 0);
+
 	test_fini(data);
 	igt_remove_fb(data->fd, &afb);
 	lut_free(&lut_linear);
@@ -273,6 +275,13 @@ static void test_crtc_linear_regamma(data_t *data)
 
 	test_init(data);
 
+	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_GAMMA_LUT));
+
+
+	data->regamma_lut_size =
+		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_GAMMA_LUT_SIZE);
+	igt_assert_lt(0, data->regamma_lut_size);
+
 	lut_init(&lut_linear, data->regamma_lut_size);
 	lut_gen_linear(&lut_linear, 0xffff);
 
@@ -282,7 +291,6 @@ static void test_crtc_linear_regamma(data_t *data)
 	/* Draw the reference image. */
 	igt_plane_set_fb(data->primary, &afb);
 	set_regamma_lut(data, NULL);
-	set_degamma_lut(data, NULL);
 	igt_display_commit_atomic(display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
 
 	igt_pipe_crc_collect_crc(data->pipe_crc, &ref_crc);
@@ -294,6 +302,8 @@ static void test_crtc_linear_regamma(data_t *data)
 	igt_pipe_crc_collect_crc(data->pipe_crc, &new_crc);
 	igt_assert_crc_equal(&ref_crc, &new_crc);
 
+	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_GAMMA_LUT, NULL, 0);
+
 	test_fini(data);
 	igt_remove_fb(data->fd, &afb);
 	lut_free(&lut_linear);
@@ -305,7 +315,7 @@ static void test_crtc_linear_regamma(data_t *data)
  * being CRC level accurate across a full test gradient but most values should
  * still match.
  *
- * This test can't pass on DCE because it doesn't support non-linear degamma.
+ * This test skips on DCE because it doesn't support user degamma.
  */
 static void test_crtc_lut_accuracy(data_t *data)
 {
@@ -331,6 +341,9 @@ static void test_crtc_lut_accuracy(data_t *data)
 
 	test_init(data);
 
+	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT));
+	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_GAMMA_LUT));
+
 	lut_init(&lut_degamma, data->degamma_lut_size);
 	lut_gen_degamma_srgb(&lut_degamma, 0xffff);
 
@@ -369,6 +382,9 @@ static void test_crtc_lut_accuracy(data_t *data)
 		igt_assert_crc_equal(&ref_crc, &new_crc);
 	}
 
+	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_GAMMA_LUT, NULL, 0);
+	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_DEGAMMA_LUT, NULL, 0);
+
 	test_fini(data);
 	igt_remove_fb(data->fd, &afb);
 	lut_free(&lut_regamma);
-- 
2.39.0

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [igt-dev] ✓ Fi.CI.BAT: success for tests/amdgpu/amd_color: check supported color prop before running tests
  2023-02-14 11:42 [igt-dev] [PATCH i-g-t] tests/amdgpu/amd_color: check supported color prop before running tests Melissa Wen
@ 2023-02-14 12:42 ` Patchwork
  2023-02-14 17:46 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2023-03-06  9:56 ` [igt-dev] [PATCH i-g-t] " Alex Hung
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2023-02-14 12:42 UTC (permalink / raw)
  To: Melissa Wen; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 2917 bytes --]

== Series Details ==

Series: tests/amdgpu/amd_color: check supported color prop before running tests
URL   : https://patchwork.freedesktop.org/series/114002/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12737 -> IGTPW_8493
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (39 -> 37)
------------------------------

  Missing    (2): bat-kbl-2 fi-snb-2520m 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live@hangcheck:
    - fi-skl-guc:         [PASS][1] -> [DMESG-WARN][2] ([i915#8073])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/fi-skl-guc/igt@i915_selftest@live@hangcheck.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/fi-skl-guc/igt@i915_selftest@live@hangcheck.html

  
#### Possible fixes ####

  * igt@gem_exec_gttfill@basic:
    - fi-pnv-d510:        [FAIL][3] ([i915#7229]) -> [PASS][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/fi-pnv-d510/igt@gem_exec_gttfill@basic.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/fi-pnv-d510/igt@gem_exec_gttfill@basic.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions:
    - fi-bsw-n3050:       [FAIL][5] ([i915#6298]) -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/fi-bsw-n3050/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/fi-bsw-n3050/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html

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

  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#6298]: https://gitlab.freedesktop.org/drm/intel/issues/6298
  [i915#6311]: https://gitlab.freedesktop.org/drm/intel/issues/6311
  [i915#6794]: https://gitlab.freedesktop.org/drm/intel/issues/6794
  [i915#7229]: https://gitlab.freedesktop.org/drm/intel/issues/7229
  [i915#7359]: https://gitlab.freedesktop.org/drm/intel/issues/7359
  [i915#8073]: https://gitlab.freedesktop.org/drm/intel/issues/8073


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7160 -> IGTPW_8493

  CI-20190529: 20190529
  CI_DRM_12737: 5dd4db260f2fb67ae027a64850bc6d21ed91df87 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8493: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/index.html
  IGT_7160: 45da871dd2684227e93a2fc002b87dfc58bd5fd9 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

[-- Attachment #2: Type: text/html, Size: 3305 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [igt-dev] ✓ Fi.CI.IGT: success for tests/amdgpu/amd_color: check supported color prop before running tests
  2023-02-14 11:42 [igt-dev] [PATCH i-g-t] tests/amdgpu/amd_color: check supported color prop before running tests Melissa Wen
  2023-02-14 12:42 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
@ 2023-02-14 17:46 ` Patchwork
  2023-03-06  9:56 ` [igt-dev] [PATCH i-g-t] " Alex Hung
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2023-02-14 17:46 UTC (permalink / raw)
  To: Melissa Wen; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 24301 bytes --]

== Series Details ==

Series: tests/amdgpu/amd_color: check supported color prop before running tests
URL   : https://patchwork.freedesktop.org/series/114002/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12737_full -> IGTPW_8493_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (11 -> 10)
------------------------------

  Missing    (1): shard-rkl0 

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

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

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@kms_cursor_crc@cursor-sliding-64x64@pipe-b-hdmi-a-4:
    - {shard-dg1}:        [PASS][1] -> [FAIL][2] +3 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-dg1-12/igt@kms_cursor_crc@cursor-sliding-64x64@pipe-b-hdmi-a-4.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-dg1-12/igt@kms_cursor_crc@cursor-sliding-64x64@pipe-b-hdmi-a-4.html

  * igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-1:
    - {shard-tglu}:       NOTRUN -> [DMESG-WARN][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-tglu-5/igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-1.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-glk:          [PASS][4] -> [FAIL][5] ([i915#2842]) +2 similar issues
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-glk1/igt@gem_exec_fair@basic-none-share@rcs0.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-glk4/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@i915_suspend@basic-s3-without-i915:
    - shard-snb:          [PASS][6] -> [INCOMPLETE][7] ([i915#4528] / [i915#4817])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-snb4/igt@i915_suspend@basic-s3-without-i915.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-snb4/igt@i915_suspend@basic-s3-without-i915.html

  * igt@kms_color@ctm-max@pipe-a-hdmi-a-1:
    - shard-snb:          NOTRUN -> [SKIP][8] ([fdo#109271]) +49 similar issues
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-snb1/igt@kms_color@ctm-max@pipe-a-hdmi-a-1.html

  * igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size:
    - shard-apl:          [PASS][9] -> [FAIL][10] ([i915#2346])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-apl1/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-apl1/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html

  * igt@kms_flip@2x-flip-vs-expired-vblank@ab-hdmi-a1-hdmi-a2:
    - shard-glk:          [PASS][11] -> [FAIL][12] ([i915#2122]) +1 similar issue
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-glk2/igt@kms_flip@2x-flip-vs-expired-vblank@ab-hdmi-a1-hdmi-a2.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-glk4/igt@kms_flip@2x-flip-vs-expired-vblank@ab-hdmi-a1-hdmi-a2.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-gtt:
    - shard-glk:          NOTRUN -> [SKIP][13] ([fdo#109271]) +7 similar issues
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-glk4/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-gtt.html

  
#### Possible fixes ####

  * igt@drm_read@short-buffer-nonblock:
    - {shard-rkl}:        [SKIP][14] ([i915#4098]) -> [PASS][15]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-1/igt@drm_read@short-buffer-nonblock.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-6/igt@drm_read@short-buffer-nonblock.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - {shard-rkl}:        [FAIL][16] ([i915#6268]) -> [PASS][17]
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-6/igt@gem_ctx_exec@basic-nohangcheck.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-1/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_ctx_persistence@hang:
    - {shard-rkl}:        [SKIP][18] ([i915#6252]) -> [PASS][19]
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-5/igt@gem_ctx_persistence@hang.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-6/igt@gem_ctx_persistence@hang.html

  * igt@gem_eio@in-flight-suspend:
    - {shard-rkl}:        [FAIL][20] ([i915#5115] / [i915#7052]) -> [PASS][21]
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-3/igt@gem_eio@in-flight-suspend.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-1/igt@gem_eio@in-flight-suspend.html

  * igt@gem_exec_fair@basic-deadline:
    - {shard-rkl}:        [FAIL][22] ([i915#2846]) -> [PASS][23]
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-1/igt@gem_exec_fair@basic-deadline.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-2/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-rrul@rcs0:
    - {shard-rkl}:        [FAIL][24] ([i915#2842]) -> [PASS][25]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-2/igt@gem_exec_fair@basic-none-rrul@rcs0.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-5/igt@gem_exec_fair@basic-none-rrul@rcs0.html

  * igt@gem_exec_reloc@basic-wc-read-noreloc:
    - {shard-rkl}:        [SKIP][26] ([i915#3281]) -> [PASS][27] +3 similar issues
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-3/igt@gem_exec_reloc@basic-wc-read-noreloc.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-5/igt@gem_exec_reloc@basic-wc-read-noreloc.html

  * igt@gem_exec_suspend@basic-s3@smem:
    - {shard-rkl}:        [ABORT][28] ([i915#5122]) -> [PASS][29]
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-4/igt@gem_exec_suspend@basic-s3@smem.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-4/igt@gem_exec_suspend@basic-s3@smem.html

  * igt@gem_partial_pwrite_pread@reads-snoop:
    - {shard-rkl}:        [SKIP][30] ([i915#3282]) -> [PASS][31]
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-1/igt@gem_partial_pwrite_pread@reads-snoop.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-5/igt@gem_partial_pwrite_pread@reads-snoop.html

  * igt@i915_hangman@gt-engine-error@bcs0:
    - {shard-rkl}:        [SKIP][32] ([i915#6258]) -> [PASS][33]
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-5/igt@i915_hangman@gt-engine-error@bcs0.html
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-1/igt@i915_hangman@gt-engine-error@bcs0.html

  * igt@i915_pm_dc@dc9-dpms:
    - {shard-tglu}:       [SKIP][34] ([i915#4281]) -> [PASS][35]
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-tglu-1/igt@i915_pm_dc@dc9-dpms.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-tglu-2/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_pm_rpm@dpms-mode-unset-lpsp:
    - {shard-rkl}:        [SKIP][36] ([i915#1397]) -> [PASS][37]
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-3/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-6/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html

  * igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size:
    - shard-glk:          [FAIL][38] ([i915#2346]) -> [PASS][39] +1 similar issue
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-glk4/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-glk1/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-apl:          [FAIL][40] ([i915#4767]) -> [PASS][41]
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-apl6/igt@kms_fbcon_fbt@fbc-suspend.html
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-apl7/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_fbcon_fbt@psr:
    - {shard-rkl}:        [SKIP][42] ([fdo#110189] / [i915#3955]) -> [PASS][43]
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-2/igt@kms_fbcon_fbt@psr.html
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-6/igt@kms_fbcon_fbt@psr.html

  * igt@kms_flip@flip-vs-suspend-interruptible@a-vga1:
    - shard-snb:          [INCOMPLETE][44] ([i915#4839]) -> [PASS][45]
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-snb1/igt@kms_flip@flip-vs-suspend-interruptible@a-vga1.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-snb5/igt@kms_flip@flip-vs-suspend-interruptible@a-vga1.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt:
    - {shard-tglu}:       [SKIP][46] ([i915#1849]) -> [PASS][47] +1 similar issue
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-tglu-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-tglu-4/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render:
    - {shard-rkl}:        [SKIP][48] ([i915#1849] / [i915#4098]) -> [PASS][49] +11 similar issues
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-4/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render.html

  * igt@kms_plane@plane-position-hole-dpms@pipe-b-planes:
    - {shard-rkl}:        [SKIP][50] ([i915#1849]) -> [PASS][51] +3 similar issues
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-5/igt@kms_plane@plane-position-hole-dpms@pipe-b-planes.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-6/igt@kms_plane@plane-position-hole-dpms@pipe-b-planes.html

  * igt@kms_psr@primary_render:
    - {shard-rkl}:        [SKIP][52] ([i915#1072]) -> [PASS][53] +1 similar issue
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-2/igt@kms_psr@primary_render.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-6/igt@kms_psr@primary_render.html

  * igt@kms_vblank@pipe-b-query-idle:
    - {shard-rkl}:        [SKIP][54] ([i915#1845] / [i915#4098]) -> [PASS][55] +18 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-4/igt@kms_vblank@pipe-b-query-idle.html
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-6/igt@kms_vblank@pipe-b-query-idle.html

  * igt@kms_vblank@pipe-d-wait-forked-hang:
    - {shard-tglu}:       [SKIP][56] ([i915#1845] / [i915#7651]) -> [PASS][57] +8 similar issues
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-tglu-6/igt@kms_vblank@pipe-d-wait-forked-hang.html
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-tglu-7/igt@kms_vblank@pipe-d-wait-forked-hang.html

  * igt@perf@gen8-unprivileged-single-ctx-counters:
    - {shard-rkl}:        [SKIP][58] ([i915#2436]) -> [PASS][59]
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-3/igt@perf@gen8-unprivileged-single-ctx-counters.html
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-5/igt@perf@gen8-unprivileged-single-ctx-counters.html

  * igt@perf@polling-small-buf:
    - {shard-rkl}:        [FAIL][60] ([i915#1722]) -> [PASS][61]
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-rkl-3/igt@perf@polling-small-buf.html
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-rkl-1/igt@perf@polling-small-buf.html

  * igt@sysfs_timeslice_duration@timeout@vecs0:
    - {shard-dg1}:        [FAIL][62] ([i915#1755]) -> [PASS][63]
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12737/shard-dg1-16/igt@sysfs_timeslice_duration@timeout@vecs0.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/shard-dg1-12/igt@sysfs_timeslice_duration@timeout@vecs0.html

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

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [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#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
  [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [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#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
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1722]: https://gitlab.freedesktop.org/drm/intel/issues/1722
  [i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#1850]: https://gitlab.freedesktop.org/drm/intel/issues/1850
  [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
  [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2434]: https://gitlab.freedesktop.org/drm/intel/issues/2434
  [i915#2436]: https://gitlab.freedesktop.org/drm/intel/issues/2436
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [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#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [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#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
  [i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [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#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3825]: https://gitlab.freedesktop.org/drm/intel/issues/3825
  [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#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#3966]: https://gitlab.freedesktop.org/drm/intel/issues/3966
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
  [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4817]: https://gitlab.freedesktop.org/drm/intel/issues/4817
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4839]: https://gitlab.freedesktop.org/drm/intel/issues/4839
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4854]: https://gitlab.freedesktop.org/drm/intel/issues/4854
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
  [i915#4958]: https://gitlab.freedesktop.org/drm/intel/issues/4958
  [i915#5115]: https://gitlab.freedesktop.org/drm/intel/issues/5115
  [i915#5122]: https://gitlab.freedesktop.org/drm/intel/issues/5122
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [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#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245
  [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
  [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
  [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
  [i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412
  [i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
  [i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6944]: https://gitlab.freedesktop.org/drm/intel/issues/6944
  [i915#6946]: https://gitlab.freedesktop.org/drm/intel/issues/6946
  [i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
  [i915#7037]: https://gitlab.freedesktop.org/drm/intel/issues/7037
  [i915#7052]: https://gitlab.freedesktop.org/drm/intel/issues/7052
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#7128]: https://gitlab.freedesktop.org/drm/intel/issues/7128
  [i915#7294]: https://gitlab.freedesktop.org/drm/intel/issues/7294
  [i915#7456]: https://gitlab.freedesktop.org/drm/intel/issues/7456
  [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
  [i915#7582]: https://gitlab.freedesktop.org/drm/intel/issues/7582
  [i915#7651]: https://gitlab.freedesktop.org/drm/intel/issues/7651
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701
  [i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
  [i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975
  [i915#8152]: https://gitlab.freedesktop.org/drm/intel/issues/8152
  [i915#8155]: https://gitlab.freedesktop.org/drm/intel/issues/8155


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7160 -> IGTPW_8493

  CI-20190529: 20190529
  CI_DRM_12737: 5dd4db260f2fb67ae027a64850bc6d21ed91df87 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8493: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8493/index.html
  IGT_7160: 45da871dd2684227e93a2fc002b87dfc58bd5fd9 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

[-- Attachment #2: Type: text/html, Size: 17234 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [igt-dev] [PATCH i-g-t] tests/amdgpu/amd_color: check supported color prop before running tests
  2023-02-14 11:42 [igt-dev] [PATCH i-g-t] tests/amdgpu/amd_color: check supported color prop before running tests Melissa Wen
  2023-02-14 12:42 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
  2023-02-14 17:46 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2023-03-06  9:56 ` Alex Hung
  2023-03-12 16:13   ` Melissa Wen
  2 siblings, 1 reply; 5+ messages in thread
From: Alex Hung @ 2023-03-06  9:56 UTC (permalink / raw)
  To: Melissa Wen, igt-dev; +Cc: kernel-dev



On 2023-02-14 19:42, Melissa Wen wrote:
> If a DRM CRTC color prop is not advertised, the test should skip instead
> of fail. It currently fits DCE case. The driver doesn't support user
> degamma, therefore, DRM CRTC degamma properties are disabled in the
> kernel driver [1]. Previously the test just fails on DCE because the
> driver advertises degamma props although user degamma isn't supported by
> HW. Now we can just skip the test in case of a missing color prop
> support.
> 
> [1] https://lore.kernel.org/dri-devel/20221103184500.14450-1-mwen@igalia.com/
> 
> Signed-off-by: Melissa Wen <mwen@igalia.com>
> ---
>   tests/amdgpu/amd_color.c | 36 ++++++++++++++++++++++++++----------
>   1 file changed, 26 insertions(+), 10 deletions(-)
> 
> diff --git a/tests/amdgpu/amd_color.c b/tests/amdgpu/amd_color.c
> index defe57bd..2dbc3dfb 100644
> --- a/tests/amdgpu/amd_color.c
> +++ b/tests/amdgpu/amd_color.c
> @@ -196,14 +196,6 @@ static void test_init(data_t *data)
>   
>   	igt_output_set_pipe(data->output, data->pipe_id);
>   
> -	data->degamma_lut_size =
> -		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT_SIZE);
> -	igt_assert_lt(0, data->degamma_lut_size);
> -
> -	data->regamma_lut_size =
> -		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_GAMMA_LUT_SIZE);
> -	igt_assert_lt(0, data->regamma_lut_size);
> -
>   	data->w = data->mode->hdisplay;
>   	data->h = data->mode->vdisplay;
>   }
> @@ -221,6 +213,8 @@ static void test_fini(data_t *data)
>    * matrix if not passed any. The whole pipe should be in linear bypass mode
>    * when all the matrices are NULL - CRCs for a linear degamma matrix and
>    * a NULL one should match.
> + *
> + * This test skips on DCE because it doesn't support user degamma.
>    */
>   static void test_crtc_linear_degamma(data_t *data)
>   {
> @@ -231,6 +225,12 @@ static void test_crtc_linear_degamma(data_t *data)
>   
>   	test_init(data);
>   
> +	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT));
> +
> +	data->degamma_lut_size =
> +		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT_SIZE);
> +	igt_assert_lt(0, data->degamma_lut_size);
> +
>   	lut_init(&lut_linear, data->degamma_lut_size);
>   	lut_gen_linear(&lut_linear, 0xffff);
>   
> @@ -252,6 +252,8 @@ static void test_crtc_linear_degamma(data_t *data)
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &new_crc);
>   	igt_assert_crc_equal(&ref_crc, &new_crc);
>   
> +	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_DEGAMMA_LUT, NULL, 0);
> +

These are not wrong, but isn't using "set_degamma_lut(data, NULL)" more 
symmetric?

This also applies to other igt_pipe_obj_replace_prop_blob(data->pipe, 
IGT_CRTC_DEGAMMA_LUT/IGT_CRTC_GAMMA_LUT, NULL, 0) below:

>   	test_fini(data);
>   	igt_remove_fb(data->fd, &afb);
>   	lut_free(&lut_linear);
> @@ -273,6 +275,13 @@ static void test_crtc_linear_regamma(data_t *data)
>   
>   	test_init(data);
>   
> +	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_GAMMA_LUT));
> +
> +
> +	data->regamma_lut_size =
> +		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_GAMMA_LUT_SIZE);
> +	igt_assert_lt(0, data->regamma_lut_size);
> +
>   	lut_init(&lut_linear, data->regamma_lut_size);
>   	lut_gen_linear(&lut_linear, 0xffff);
>   
> @@ -282,7 +291,6 @@ static void test_crtc_linear_regamma(data_t *data)
>   	/* Draw the reference image. */
>   	igt_plane_set_fb(data->primary, &afb);
>   	set_regamma_lut(data, NULL);
> -	set_degamma_lut(data, NULL);

The set_degamma_lut is removed in test_crtc_linear_regamma(). Will it be 
a good idea to remove set_regamma_lut in earlier function 
test_crtc_linear_degamma() as well?

>   	igt_display_commit_atomic(display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>   
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &ref_crc);
> @@ -294,6 +302,8 @@ static void test_crtc_linear_regamma(data_t *data)
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &new_crc);
>   	igt_assert_crc_equal(&ref_crc, &new_crc);
>   
> +	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_GAMMA_LUT, NULL, 0);
> +

set_regamma_lut(data, NULL);

>   	test_fini(data);
>   	igt_remove_fb(data->fd, &afb);
>   	lut_free(&lut_linear);
> @@ -305,7 +315,7 @@ static void test_crtc_linear_regamma(data_t *data)
>    * being CRC level accurate across a full test gradient but most values should
>    * still match.
>    *
> - * This test can't pass on DCE because it doesn't support non-linear degamma.
> + * This test skips on DCE because it doesn't support user degamma.
>    */
>   static void test_crtc_lut_accuracy(data_t *data)
>   {
> @@ -331,6 +341,9 @@ static void test_crtc_lut_accuracy(data_t *data)
>   
>   	test_init(data);
>   
> +	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT));
> +	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_GAMMA_LUT));
> +
>   	lut_init(&lut_degamma, data->degamma_lut_size);
>   	lut_gen_degamma_srgb(&lut_degamma, 0xffff);
>   
> @@ -369,6 +382,9 @@ static void test_crtc_lut_accuracy(data_t *data)
>   		igt_assert_crc_equal(&ref_crc, &new_crc);
>   	}
>   
> +	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_GAMMA_LUT, NULL, 0);
> +	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_DEGAMMA_LUT, NULL, 0);
> +

set_regamma_lut(data, NULL);
set_degamma_lut(data, NULL);

>   	test_fini(data);
>   	igt_remove_fb(data->fd, &afb);
>   	lut_free(&lut_regamma);

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [igt-dev] [PATCH i-g-t] tests/amdgpu/amd_color: check supported color prop before running tests
  2023-03-06  9:56 ` [igt-dev] [PATCH i-g-t] " Alex Hung
@ 2023-03-12 16:13   ` Melissa Wen
  0 siblings, 0 replies; 5+ messages in thread
From: Melissa Wen @ 2023-03-12 16:13 UTC (permalink / raw)
  To: Alex Hung; +Cc: igt-dev, kernel-dev

[-- Attachment #1: Type: text/plain, Size: 5796 bytes --]

On 03/06, Alex Hung wrote:
> 
> 
> On 2023-02-14 19:42, Melissa Wen wrote:
> > If a DRM CRTC color prop is not advertised, the test should skip instead
> > of fail. It currently fits DCE case. The driver doesn't support user
> > degamma, therefore, DRM CRTC degamma properties are disabled in the
> > kernel driver [1]. Previously the test just fails on DCE because the
> > driver advertises degamma props although user degamma isn't supported by
> > HW. Now we can just skip the test in case of a missing color prop
> > support.
> > 
> > [1] https://lore.kernel.org/dri-devel/20221103184500.14450-1-mwen@igalia.com/
> > 
> > Signed-off-by: Melissa Wen <mwen@igalia.com>
> > ---
> >   tests/amdgpu/amd_color.c | 36 ++++++++++++++++++++++++++----------
> >   1 file changed, 26 insertions(+), 10 deletions(-)
> > 
> > diff --git a/tests/amdgpu/amd_color.c b/tests/amdgpu/amd_color.c
> > index defe57bd..2dbc3dfb 100644
> > --- a/tests/amdgpu/amd_color.c
> > +++ b/tests/amdgpu/amd_color.c
> > @@ -196,14 +196,6 @@ static void test_init(data_t *data)
> >   	igt_output_set_pipe(data->output, data->pipe_id);
> > -	data->degamma_lut_size =
> > -		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT_SIZE);
> > -	igt_assert_lt(0, data->degamma_lut_size);
> > -
> > -	data->regamma_lut_size =
> > -		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_GAMMA_LUT_SIZE);
> > -	igt_assert_lt(0, data->regamma_lut_size);
> > -
> >   	data->w = data->mode->hdisplay;
> >   	data->h = data->mode->vdisplay;
> >   }
> > @@ -221,6 +213,8 @@ static void test_fini(data_t *data)
> >    * matrix if not passed any. The whole pipe should be in linear bypass mode
> >    * when all the matrices are NULL - CRCs for a linear degamma matrix and
> >    * a NULL one should match.
> > + *
> > + * This test skips on DCE because it doesn't support user degamma.
> >    */
> >   static void test_crtc_linear_degamma(data_t *data)
> >   {
> > @@ -231,6 +225,12 @@ static void test_crtc_linear_degamma(data_t *data)
> >   	test_init(data);
> > +	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT));
> > +
> > +	data->degamma_lut_size =
> > +		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT_SIZE);
> > +	igt_assert_lt(0, data->degamma_lut_size);
> > +
> >   	lut_init(&lut_linear, data->degamma_lut_size);
> >   	lut_gen_linear(&lut_linear, 0xffff);
> > @@ -252,6 +252,8 @@ static void test_crtc_linear_degamma(data_t *data)
> >   	igt_pipe_crc_collect_crc(data->pipe_crc, &new_crc);
> >   	igt_assert_crc_equal(&ref_crc, &new_crc);
> > +	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_DEGAMMA_LUT, NULL, 0);
> > +
> 
> These are not wrong, but isn't using "set_degamma_lut(data, NULL)" more
> symmetric?
> 
> This also applies to other igt_pipe_obj_replace_prop_blob(data->pipe,
> IGT_CRTC_DEGAMMA_LUT/IGT_CRTC_GAMMA_LUT, NULL, 0) below:
> 
> >   	test_fini(data);
> >   	igt_remove_fb(data->fd, &afb);
> >   	lut_free(&lut_linear);
> > @@ -273,6 +275,13 @@ static void test_crtc_linear_regamma(data_t *data)
> >   	test_init(data);
> > +	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_GAMMA_LUT));
> > +
> > +
> > +	data->regamma_lut_size =
> > +		igt_pipe_obj_get_prop(data->pipe, IGT_CRTC_GAMMA_LUT_SIZE);
> > +	igt_assert_lt(0, data->regamma_lut_size);
> > +
> >   	lut_init(&lut_linear, data->regamma_lut_size);
> >   	lut_gen_linear(&lut_linear, 0xffff);
> > @@ -282,7 +291,6 @@ static void test_crtc_linear_regamma(data_t *data)
> >   	/* Draw the reference image. */
> >   	igt_plane_set_fb(data->primary, &afb);
> >   	set_regamma_lut(data, NULL);
> > -	set_degamma_lut(data, NULL);
> 
> The set_degamma_lut is removed in test_crtc_linear_regamma(). Will it be a
> good idea to remove set_regamma_lut in earlier function
> test_crtc_linear_degamma() as well?
> 
> >   	igt_display_commit_atomic(display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> >   	igt_pipe_crc_collect_crc(data->pipe_crc, &ref_crc);
> > @@ -294,6 +302,8 @@ static void test_crtc_linear_regamma(data_t *data)
> >   	igt_pipe_crc_collect_crc(data->pipe_crc, &new_crc);
> >   	igt_assert_crc_equal(&ref_crc, &new_crc);
> > +	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_GAMMA_LUT, NULL, 0);
> > +
> 
> set_regamma_lut(data, NULL);
> 
> >   	test_fini(data);
> >   	igt_remove_fb(data->fd, &afb);
> >   	lut_free(&lut_linear);
> > @@ -305,7 +315,7 @@ static void test_crtc_linear_regamma(data_t *data)
> >    * being CRC level accurate across a full test gradient but most values should
> >    * still match.
> >    *
> > - * This test can't pass on DCE because it doesn't support non-linear degamma.
> > + * This test skips on DCE because it doesn't support user degamma.
> >    */
> >   static void test_crtc_lut_accuracy(data_t *data)
> >   {
> > @@ -331,6 +341,9 @@ static void test_crtc_lut_accuracy(data_t *data)
> >   	test_init(data);
> > +	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_DEGAMMA_LUT));
> > +	igt_require(igt_pipe_obj_has_prop(data->pipe, IGT_CRTC_GAMMA_LUT));
> > +
> >   	lut_init(&lut_degamma, data->degamma_lut_size);
> >   	lut_gen_degamma_srgb(&lut_degamma, 0xffff);
> > @@ -369,6 +382,9 @@ static void test_crtc_lut_accuracy(data_t *data)
> >   		igt_assert_crc_equal(&ref_crc, &new_crc);
> >   	}
> > +	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_GAMMA_LUT, NULL, 0);
> > +	igt_pipe_obj_replace_prop_blob(data->pipe, IGT_CRTC_DEGAMMA_LUT, NULL, 0);
> > +
> 
> set_regamma_lut(data, NULL);
> set_degamma_lut(data, NULL);

Hi Alex,

You're right. I just sent a v2 addressing your feedback.

Thanks for reviewing it,

Melissa

> 
> >   	test_fini(data);
> >   	igt_remove_fb(data->fd, &afb);
> >   	lut_free(&lut_regamma);

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-03-12 16:13 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-14 11:42 [igt-dev] [PATCH i-g-t] tests/amdgpu/amd_color: check supported color prop before running tests Melissa Wen
2023-02-14 12:42 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2023-02-14 17:46 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-03-06  9:56 ` [igt-dev] [PATCH i-g-t] " Alex Hung
2023-03-12 16:13   ` Melissa Wen

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.