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

Shankar, Uma uma.shankar at intel.com
Thu Mar 28 21:31:48 UTC 2019



>-----Original Message-----
>From: Ville Syrjälä [mailto:ville.syrjala at linux.intel.com]
>Sent: Friday, March 29, 2019 2:27 AM
>To: Shankar, Uma <uma.shankar at intel.com>
>Cc: igt-dev at lists.freedesktop.org; Syrjala, Ville <ville.syrjala at intel.com>; Lankhorst,
>Maarten <maarten.lankhorst at intel.com>
>Subject: Re: [igt-dev] [v4] tests/kms_color: Fix CRC mismatch issues with ctm test
>
>On Fri, Mar 29, 2019 at 02:49:15AM +0530, Uma Shankar wrote:
>> 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.
>>
>> v4: Disabling degamma and gamma for ctm max tests, after the logic in
>> kernel has been updated by Ville's series.
>>
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108147
>> Signed-off-by: Uma Shankar <uma.shankar at intel.com>
>> ---
>>  tests/kms_color.c | 15 +++++++++++++--
>>  1 file changed, 13 insertions(+), 2 deletions(-)
>>
>> diff --git a/tests/kms_color.c b/tests/kms_color.c index
>> decf3c2..0951ffc 100644
>> --- a/tests/kms_color.c
>> +++ b/tests/kms_color.c
>> @@ -696,8 +696,19 @@ 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);
>> +		} else {
>> +			/* Disable Degamma and Gamma for ctm max test */
>> +			disable_degamma(primary->pipe);
>> +			disable_gamma(primary->pipe);
>
>Why don't we just disable these always?

Yeah fair point. Will update the patch.

>
>> +		}
>> +
>>  		disable_ctm(primary->pipe);
>>  		igt_display_commit(&data->display);
>>
>> --
>> 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