[igt-dev] [PATCH i-g-t] tests/kms_color: Add 10bpc frame buffer parameterization to subtests

Leo sunpeng.li at amd.com
Tue Dec 17 14:00:22 UTC 2019



On 2019-12-12 4:13 p.m., Ville Syrjälä wrote:
> On Thu, Dec 12, 2019 at 03:53:34PM -0500, Leo wrote:
>>
>>
>> On 2019-12-12 10:03 a.m., Ville Syrjälä wrote:
>>> On Wed, Dec 11, 2019 at 03:46:36PM -0500, sunpeng.li at amd.com wrote:
>>>> From: Leo Li <sunpeng.li at amd.com>
>>>>
>>>> We'd like to test the hardware pipe's color management with 10bit
>>>> surfaces.
>>>
>>> Why exactly? The pipe color management stuff doesn't care what
>>> pixel format the plane used.
>>>
>>
>> We expose 10bpc support to usermode with color management, so it'd be
>> good to cover it with a test.
>>
>> With amdpgu, color management indeed doesn't care about surface format,
>> since it's all converted to fixed point in hardware beforehand.
> 
> Totally missed this came from AMD folks. Good thing I was still
> correct with my statement then :)
> 
>> But I
>> think it's best to not assume hardware behavior, and test the actual
>> use case instead.
> 
> I think what we would really want is a test that makes sure we can
> achieve the desired precision in the output for some fb depth and
> gamma configuration (sadly the gamma uapi doesn't let us do that
> ATM in a hardware agnostic way). I don't think this test currently
> checks anything like that. But maybe I'm misremebering what it
> actually does.
> 

kms_color does a min and max gamma test where all values are mapped to 0
or 1, so no precision check there... However, it looks like CTM
precision is checked to be within some reasonable threshold, according
to the bpc tested.

I'm not sure if testing LUT precision would make sense as a hw agnostic
test. For AMD hardware at least, the internal representation wasn't designed to
be precise, but to follow human color perception. i.e. precision is lost at
higher color values. So any LUT precision test will have to take vendor-specific
quarks into account. Perhaps this isn't the case for the CTM since the concept
for hw is simpler? At least it works well with i915 and amdgpu FWICT.

Perhaps it's better to have vendor specific tests for LUT precision and
accuracy. I think these tests will at least show that gamma is operational with
10bpc surfaces, which is hw-agnostic enough of a test.

Leo


More information about the igt-dev mailing list