2024-05-10 11:19:19 +00:00
|
|
|
From 4b89e6e55f5c04f836b92ffbeef7c4c8a545adfd Mon Sep 17 00:00:00 2001
|
|
|
|
From: Matthias Reichl <hias@horus.com>
|
|
|
|
Date: Sat, 11 Mar 2023 22:41:17 +0100
|
|
|
|
Subject: [PATCH 0037/1085] drm/vc4: drop unnecessary and harmful HDMI RGB
|
|
|
|
format check
|
|
|
|
|
|
|
|
RGB is a mandatory format for all DVI and HDMI monitors so there's
|
|
|
|
no need to check for presence of the DRM_COLOR_FORMAT_RGB444 bit in
|
|
|
|
color_formats.
|
|
|
|
|
|
|
|
More importantly this checks breaks working around EDID issues with
|
|
|
|
eg video=HDMI-A-1:1024x768D or drm.edid_firmware=edid/1024x768.bin
|
|
|
|
as the RGB444 bit is only set when a valid EDID with digital bit set in
|
|
|
|
the input byte is present - which isn't the case when no EDID can be
|
|
|
|
read from the display device at all or with the in-built kernel EDIDs,
|
|
|
|
which mimic analog (VGA) displays without the digital bit set.
|
|
|
|
|
|
|
|
So drop the check, if we output video on the HDMI connector we can
|
|
|
|
assume that the display can accept 8bit RGB.
|
|
|
|
|
|
|
|
Signed-off-by: Matthias Reichl <hias@horus.com>
|
|
|
|
---
|
|
|
|
drivers/gpu/drm/vc4/vc4_hdmi.c | 3 ---
|
|
|
|
1 file changed, 3 deletions(-)
|
|
|
|
|
|
|
|
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
|
|
|
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
2024-10-04 19:39:07 +00:00
|
|
|
@@ -1958,9 +1958,6 @@ vc4_hdmi_sink_supports_format_bpc(const
|
2024-05-10 11:19:19 +00:00
|
|
|
case VC4_HDMI_OUTPUT_RGB:
|
|
|
|
drm_dbg(dev, "RGB Format, checking the constraints.\n");
|
|
|
|
|
|
|
|
- if (!(info->color_formats & DRM_COLOR_FORMAT_RGB444))
|
|
|
|
- return false;
|
|
|
|
-
|
|
|
|
if (bpc == 10 && !(info->edid_hdmi_rgb444_dc_modes & DRM_EDID_HDMI_DC_30)) {
|
|
|
|
drm_dbg(dev, "10 BPC but sink doesn't support Deep Color 30.\n");
|
|
|
|
return false;
|