Hey,

KDE/Plasma users reported some flickering when applying the regamma CRTC
LUT to an AMD display hardware set using an external or integrated
screen. There is some instability in how the driver stores and updates
color blocks based on color management changes or full update request.
It uses update_flag bits for surface and stream and forces some color
blocks to update without considering the previous settings.

This two-patch series avoids this issue by
(1) not calling set_output_transfer_func when the output TF has not
changed;
(2) preserve the previous out_tf value in the case of a full
update, which was unconditionally setting all update_flag bits to true
regardless of previous values.

This modifies DC and may affect behavior on other platforms. On the
other hand, it avoids unnecessary reprogramming of MPC output gamma.

Melissa

Melissa Wen (2):
  Revert "drm/amd/display: program output tf when required"
  drm/amd/display: don't update out gamma if out_tf didn't change

 drivers/gpu/drm/amd/display/dc/core/dc.c                | 5 +++++
 drivers/gpu/drm/amd/display/dc/hwss/dcn20/dcn20_hwseq.c | 5 +----
 2 files changed, 6 insertions(+), 4 deletions(-)

-- 
2.47.2

Reply via email to