[PATCH xf86-video-amdgpu 0/7] Enabling Color Management - Round 3
Michel Dänzer
michel at daenzer.net
Wed Jun 6 17:03:34 UTC 2018
On 2018-06-06 06:01 PM, Michel Dänzer wrote:
> On 2018-06-01 06:03 PM, sunpeng.li at amd.com wrote:
>> From: "Leo (Sunpeng) Li" <sunpeng.li at amd.com>
>>
>> This ended up being different enough from v2 to warrant a new patchset. Per
>> Michel's suggestions, there have been various optimizations and cleanups.
>> Here's what's changed:
>>
>> * Cache DRM color management property IDs at pre-init,
>> * instead of querying DRM each time we need to modify color properties.
>>
>> * Remove drmmode_update_cm_props().
>> * Update color properties in drmmode_output_get_property() instead.
>> * This also makes old calls to update_cm_props redundant.
>>
>> * Get rid of fake CRTCs.
>> * Previously, we were allocating a fake CRTC to configure color props on
>> outputs that don't have a CRTC.
>> * Instead, rr_configure_and_change_cm_property() can be easily modified to
>> accept NULL CRTCs.
>>
>> * Drop patches to persist color properties across DPMS events.
>> * Kernel driver should be patched instead:
>> https://lists.freedesktop.org/archives/amd-gfx/2018-May/022744.html
>> * Color props including legacy gamma now persist across crtc dpms.
>> * Non-legacy props now persist across output dpms and hotplug, as long
>> as the same CRTC remains attached to that output.
>>
>> And some smaller improvements:
>>
>> * Change CTM to be 32-bit format instead of 16-bit.
>> * This requires clients to ensure that each 32-bit element is padded to be
>> long-sized, since libXrandr parses 32-bit format as long-typed.
>>
>> * Optimized color management init during CRTC init.
>> * Query DRM once for the list of properties, instead of twice.
>
> Sounds good. I'll be going through the patches in detail from now on,
> but I don't know yet when I'll be able to finish the review.
>
>
> Meanwhile, heads up on two issues I discovered while smoke-testing the
> series (which are sort of related, but occur even without this series):
>
>
> Running Xorg in depth 30[0] results in completely wrong colours
> (everything has a red tint) with current kernels. I think this is
> because DC now preserves the gamma LUT values, but xf86-video-amdgpu
> never sets them at depth 30, so the hardware is still using values for
> 24-bit RGB.
Actually, looks like I made a mistake in my testing before; this issue
only occurs as of patch 6 of this series.
--
Earthling Michel Dänzer | http://www.amd.com
Libre software enthusiast | Mesa and X developer
More information about the amd-gfx
mailing list