Hi Maxime, On 5/13/25 4:35 PM, Maxime Ripard wrote: > Hi, > > On Fri, Apr 25, 2025 at 01:26:57PM +0300, Cristian Ciocaltea wrote: >> Try to make use of YUV420 when computing the best output format and >> RGB cannot be supported for any of the available color depths. >> >> Signed-off-by: Cristian Ciocaltea <[email protected]> >> --- >> drivers/gpu/drm/display/drm_hdmi_state_helper.c | 22 +++++++++++++++++----- >> 1 file changed, 17 insertions(+), 5 deletions(-) >> >> diff --git a/drivers/gpu/drm/display/drm_hdmi_state_helper.c >> b/drivers/gpu/drm/display/drm_hdmi_state_helper.c >> index >> 9e0a468073acbb2477eff1abef1c09d63620afaa..1fba10b92a6baa49150b6ff1e96bf2c2739bf269 >> 100644 >> --- a/drivers/gpu/drm/display/drm_hdmi_state_helper.c >> +++ b/drivers/gpu/drm/display/drm_hdmi_state_helper.c >> @@ -648,14 +648,26 @@ hdmi_compute_config(const struct drm_connector >> *connector, >> 8, connector->max_bpc); >> int ret; >> >> - /* >> - * TODO: Add support for YCbCr420 output for HDMI 2.0 capable >> - * devices, for modes that only support YCbCr420. >> - */ >> ret = hdmi_compute_format_bpc(connector, conn_state, mode, max_bpc, >> HDMI_COLORSPACE_RGB); >> + if (!ret) >> + return 0; > > Sorry, I missed it on the previous iteration, but this condition > inversion compared to the rest of the function is throwing me off :) > > I believe something like > > If (ret) { > if (connector->ycbcr_420_allowed) { > hdmi_compute_format_bpc(..., HDMI_COLORSPACE_YUV420) > } else { > drm_dbg_kms("Can't use YUV420") > } > } > > Would be more natural
Yep, will do. Please let me know if I can start preparing v5, as I'm not sure if you managed to also check the test-related patches. Thanks, Cristian
