drm/vc4: drop unnecessary and harmful HDMI RGB format check #5378
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
ping @mripard
Note: for a simple test power up RPi without HDMI cable attached, add eg
video=HDMI-A-1:1024x768D drm.debug=0x04
to cmdline.txt and watch vc4 rejecting RGB mode in dmesg without this PR. With this PR the forced video mode is accepted and after attaching the cable to RPi3B+ I got a 1024x768 display just fine