[PATCH 0/1][SRU G/H] drm/amd/display: Try YCbCr420 color when YCbCr444 fails

Werner Sembach wse at tuxedocomputers.com
Wed Apr 28 07:56:57 UTC 2021


BugLink: https://bugs.launchpad.net/bugs/1922754

SRU Justification:

Impact:
On some setups, while the monitor and the gpu support display modes with pixel
clocks of up to 600MHz, the link encoder might not. This prevents YCbCr444 and
RGB encoding for 4k60Hz, but YCbCr420 encoding might still be possible. However,
which color mode is used is decided before the link encoder capabilities are
checked, causing the check to fail and discarding 4k60Hz from the list of
possible display modes.

Fix:
This patch fixes the problem by retrying to find a display mode with YCbCr420
enforced and using it, if it is valid.

Testcase:
Tested on an Clevo NL50RU. General: Find a PC with a current AMD Radeon GPU, but
only a hdmi 1.4 output (e.g. current Clevo laptops with AMD APU's). Connect a
4k at 60Hz display supporting YCbCr420 encoding to the hdmi port. Without the patch
the maximum that can be set via xrandr is 3840 × 2160 30Hz. With the Patch
3840 × 2160 60Hz can be selected which will use YCbCr420 automatically.

Patch already got accepted upstream for linux-next:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=14e4a095b29fd290a9b80f6e553adcfcf01672d1
and applies without modifications to ubuntu-focal/hwe-5.8 and hwe-5.11

Commit-hash: 14e4a095b29fd290a9b80f6e553adcfcf01672d1

Signed-off-by: Werner Sembach <wse at tuxedocomputers.com>




More information about the kernel-team mailing list