From: "Kazlauskas, Nicholas" <Nicholas.Kazlauskas-5C7GfCeVMHo@public.gmane.org>
To: "Michel Dänzer" <michel-otUistvHUpPR7s880joybQ@public.gmane.org>
Cc: "Lakha,
Bhawanpreet" <Bhawanpreet.Lakha-5C7GfCeVMHo@public.gmane.org>,
"amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
<amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>
Subject: Re: [PATCH 10/24] drm/amd/display: Rework CRTC color management
Date: Fri, 7 Jun 2019 16:06:28 +0000 [thread overview]
Message-ID: <a1ffad75-d51a-5086-a0ee-9533bde8a921@amd.com> (raw)
In-Reply-To: <3e5b0c1b-0958-8c39-0030-56c5cdf53574-otUistvHUpPR7s880joybQ@public.gmane.org>
On 6/7/19 11:51 AM, Michel Dänzer wrote:
> On 2019-06-07 2:26 p.m., Kazlauskas, Nicholas wrote:
>> On 6/7/19 3:58 AM, Michel Dänzer wrote:
>>> On 2019-06-06 10:54 p.m., Bhawanpreet Lakha wrote:
>>>> From: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>>>>
>>>> [Why]
>>>> To prepare for the upcoming DRM plane color management properties
>>>> we need to correct a lot of wrong behavior and assumptions made for
>>>> CRTC color management.
>>>>
>>>> The documentation added by this commit in amdgpu_dm_color explains
>>>> how the HW color pipeline works and its limitations with the DRM
>>>> interface.
>>>>
>>>> The current implementation does the following wrong:
>>>> - Implicit sRGB DGM when no CRTC DGM is set
>>>> - Implicit sRGB RGM when no CRTC RGM is set
>>>> - No way to specify a non-linear DGM matrix that produces correct output
>>>> - No way to specify a correct RGM when a linear DGM is used
>>>>
>>>> We had workarounds for passing kms_color tests but not all of the
>>>> behavior we had wrong was covered by these tests (especially when
>>>> it comes to non-linear DGM). Testing both DGM and RGM at the same time
>>>> isn't something kms_color tests well either.
>>>>
>>>> [How]
>>>> The specifics for how color management works in AMDGPU and the new
>>>> behavior can be found by reading the documentation added to
>>>> amdgpu_dm_color.c from this patch.
>>>>
>>>> All of the incorrect cases from the old implementation have been
>>>> addressed for the atomic interface, but there still a few TODOs for
>>>> the legacy one.
>>>>
>>>> Note: this does cause regressions for kms_color@pipe-a-ctm-* over HDMI.
>>>>
>>>> The result looks correct from visual inspection but the CRC no longer
>>>> matches. For reference, the test was previously doing the following:
>>>>
>>>> linear degamma -> CTM -> sRGB regamma -> RGB to YUV (709) -> ...
>>>>
>>>> Now the test is doing:
>>>>
>>>> linear degamma -> CTM -> linear regamma -> RGB to YUV (709) -> ...
>>>>
>>>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>>>> Reviewed-by: Sun peng Li <Sunpeng.Li@amd.com>
>>>> Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
>>>
>>> Does this address https://bugs.freedesktop.org/110677 ? If so, can you
>>> add a reference to the commit log?
>>
>> It unfortunately does not. There are still some remaining issues with
>> legacy gamma support that I intend to address at some point - which I
>> left in this patch as TODOs.
>
> Note that the bug reporter is using xf86-video-amdgpu, which no longer
> uses legacy gamma with DC, unless I misunderstand what you mean by that.
>
>
While it can use the full LUT, my guess is that we were still getting
256 entries in DM/DC, which we interpret as legacy at the moment.
FWIW I did actually tried reproducing the issue after applying the patch
during development and it gave me the same results before and after for
that specific issue.
Nicholas Kazlauskas
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
next prev parent reply other threads:[~2019-06-07 16:06 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-06 20:54 [PATCH 00/24] DC Patches 06 Jun 2019 Bhawanpreet Lakha
[not found] ` <20190606205501.16505-1-Bhawanpreet.Lakha-5C7GfCeVMHo@public.gmane.org>
2019-06-06 20:54 ` [PATCH 01/24] drm/amd/display: fix resource saving missing when power state switch Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 02/24] drm/amd/display: Update link rate from DPCD 10 Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 03/24] drm/amd/display: Copy stream updates onto streams Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 04/24] drm/amd/display: add some math functions for dcn_calc_math Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 05/24] drm/amd/display: 3.2.33 Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 06/24] drm/amd/display: Dont aser if DP_DPHY_INTERNAL_CTRL Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 07/24] drm/amd/display: add i2c_hw_Status check to make sure as HW I2c in use Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 08/24] drm/amd/display: add audio related regs Bhawanpreet Lakha
[not found] ` <20190606205501.16505-9-Bhawanpreet.Lakha-5C7GfCeVMHo@public.gmane.org>
2019-06-25 4:15 ` Dave Airlie
[not found] ` <CAPM=9tw86HPHdDN9dAGLtL5RbRyxH69DmWq_0sH5C30xXnx7_w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2019-06-25 14:56 ` Lakha, Bhawanpreet
2019-06-06 20:54 ` [PATCH 09/24] drm/amd/display: Use macro for invalid OPP ID Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 10/24] drm/amd/display: Rework CRTC color management Bhawanpreet Lakha
[not found] ` <20190606205501.16505-11-Bhawanpreet.Lakha-5C7GfCeVMHo@public.gmane.org>
2019-06-07 7:58 ` Michel Dänzer
[not found] ` <a9b95680-66f6-6f1e-5741-0786c6eb6240-otUistvHUpPR7s880joybQ@public.gmane.org>
2019-06-07 12:26 ` Kazlauskas, Nicholas
[not found] ` <9c82a91b-971f-9531-0d12-77fcf6dbf46b-5C7GfCeVMHo@public.gmane.org>
2019-06-07 15:51 ` Michel Dänzer
[not found] ` <3e5b0c1b-0958-8c39-0030-56c5cdf53574-otUistvHUpPR7s880joybQ@public.gmane.org>
2019-06-07 16:06 ` Kazlauskas, Nicholas [this message]
2019-06-06 20:54 ` [PATCH 11/24] drm/amd/display: fix issue with eDP not detected on driver load Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 12/24] drm/amd/display: fix gamma logic breaking driver unload Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 13/24] drm/amd/display: 3.2.34 Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 14/24] drm/amd/display: 3.2.35 Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 15/24] drm/amd/display: Clean up scdc_test_data struct Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 16/24] drm/amd/display: Remove superflous error message Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 17/24] drm/amd/display: move vmid determination logic out of dc Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 18/24] drm/amd/display: Add Underflow Asserts to dc Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 19/24] drm/amd/display: Gamma logic limitations causing unintended use of RAM over ROM Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 20/24] drm/amd/display: Use stream opp_id instead of hubp Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 21/24] drm/amd/display: S3 Resume time increase after decoupling DPMS from fast boot Bhawanpreet Lakha
2019-06-06 20:54 ` [PATCH 22/24] drm/amd/display: Do not grant POST_LT_ADJ when TPS4 is used Bhawanpreet Lakha
2019-06-06 20:55 ` [PATCH 23/24] drm/amd/display: make clk_mgr call enable_pme_wa Bhawanpreet Lakha
2019-06-06 20:55 ` [PATCH 24/24] drm/amd/display: set link->dongle_max_pix_clk to 0 on a disconnect Bhawanpreet Lakha
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a1ffad75-d51a-5086-a0ee-9533bde8a921@amd.com \
--to=nicholas.kazlauskas-5c7gfcevmho@public.gmane.org \
--cc=Bhawanpreet.Lakha-5C7GfCeVMHo@public.gmane.org \
--cc=amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=michel-otUistvHUpPR7s880joybQ@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox