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

Shankar, Uma uma.shankar at intel.com
Thu Mar 28 21:41:39 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.

There is an issue it seems if we disable for all ctm tests.
There are failures for 
pipe-A-ctm-0-25 , pipe-A-ctm-0-5 and pipe-A-ctm-0-75 tests.

Not sure why they depend on gamma to be enabled.

>
>>
>>> +		}
>>> +
>>>  		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