Comment 0 for bug 1934489

Revision history for this message
Werner Sembach (matombo) wrote :

SRU Justification:

Impact:
On some setups, while the monitor and the GPU support display modes with pixel clocks of up to 600MHz, the connector might not. This prevents RGB encoding for 4k60Hz, but YCbCr420 encoding might still be possible. However, which color mode is used is decided before the pixel clock 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. It's very similar to a patch submitted to amdgpu which fixed the same problem.

Testcase:
Find a PC with a current Intel iGPU, but only a hdmi 1.4 output. Connect a 4k@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.

Patchset already got accepted upstream for linux-next:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=eacba74d4d561ea6487d944417526e1b025cbebd
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=84d95f77f4aea3f22a486cd04777afd4ab0f0ea5
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=388b863509f76f6a5ecedd7ffdaf184aa813241e
and needs only a minor modifications to apply to ubuntu-focal/hwe-5.8

Commit-hashes:
eacba74d4d561ea6487d944417526e1b025cbebd
84d95f77f4aea3f22a486cd04777afd4ab0f0ea5
388b863509f76f6a5ecedd7ffdaf184aa813241e