[igt-dev] [v3] tests/kms_color: Fix CRC mismatch issues with ctm test

Ville Syrjälä ville.syrjala at linux.intel.com
Tue Mar 26 16:46:09 UTC 2019


On Tue, Mar 26, 2019 at 10:31:01AM +0000, Shankar, Uma wrote:
> 
> 
> >-----Original Message-----
> >From: Shankar, Uma
> >Sent: Monday, March 25, 2019 2:11 PM
> >To: igt-dev at lists.freedesktop.org
> >Cc: Shankar, Uma <uma.shankar at intel.com>
> >Subject: [v3] tests/kms_color: Fix CRC mismatch issues with ctm test
> >
> >Due to Gamma/Degamma limitation with precision (lack of exact 1.0 representation)
> >due to ABI restriction, applying linear gamma affects crc. This patch fixes the same by
> >making ctm tests independant of gamma/degamma.
> >
> >v2: Disable degamma/gamma programming for ctm max test as it leads to crc
> >mimsmatch. Limiting it to this test case alone as other tests need it to be enabled,
> >hence not touching those scenarios.
> >
> >v3: Fixed a fumble with compilation.
> 
> Hi Ville,
> Can I keep your RB on this version. We have a clean CI result available now.

I'm confused. Why didn't disabling degamma+gamma work?

> 
> Thanks & Regards,
> Uma Shankar
> 
> >Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108147
> >Signed-off-by: Uma Shankar <uma.shankar at intel.com>
> >---
> > tests/kms_color.c | 16 ++++++++++++++--
> > 1 file changed, 14 insertions(+), 2 deletions(-)
> >
> >diff --git a/tests/kms_color.c b/tests/kms_color.c index decf3c2..dcc86ad 100644
> >--- a/tests/kms_color.c
> >+++ b/tests/kms_color.c
> >@@ -696,8 +696,15 @@ static bool test_pipe_ctm(data_t *data,
> > 		igt_assert(fb_modeset_id);
> > 		igt_plane_set_fb(primary, &fb_modeset);
> >
> >-		set_degamma(data, primary->pipe, degamma_linear);
> >-		set_gamma(data, primary->pipe, gamma_linear);
> >+		/*
> >+		 * Don't program LUT's for max CTM cases as limitation of
> >+		 * representing 1.0 due to ABI limits causes crc mismatch
> >+		 */
> >+		if (memcmp(before, after, sizeof(color_t))) {
> >+			set_degamma(data, primary->pipe, degamma_linear);
> >+			set_gamma(data, primary->pipe, gamma_linear);
> >+		}
> >+
> > 		disable_ctm(primary->pipe);
> > 		igt_display_commit(&data->display);
> >
> >@@ -1005,6 +1012,11 @@ run_tests_for_pipe(data_t *data, enum pipe p)
> > 		 * produce with an 8 bits per color framebuffer. */
> > 		igt_require(!IS_CHERRYVIEW(data->devid));
> >
> >+		/* Disable and let default luts be applied by kernel */
> >+		disable_degamma(primary->pipe);
> >+		disable_gamma(primary->pipe);
> >+		igt_display_commit(&data->display);
> >+
> > 		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
> > 					 full_rgb, ctm));
> > 	}
> >--
> >1.9.1
> 
> _______________________________________________
> igt-dev mailing list
> igt-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev

-- 
Ville Syrjälä
Intel


More information about the igt-dev mailing list