[Nouveau] [PATCH] drm/nouveau: set RGB quantization range to FULL

Ben Skeggs skeggsb at gmail.com
Thu Nov 11 00:44:42 UTC 2021


On Thu, 11 Nov 2021 at 01:58, Hans Verkuil <hverkuil-cisco at xs4all.nl> wrote:
>
> The nouveau driver outputs full range RGB, but the AVI InfoFrame just says
> 'Default' instead of 'Full'.
>
> Call drm_hdmi_avi_infoframe_quant_range to fill in the quantization field of
> the AVI InfoFrame correctly. Now displays that advertise RGB Selectable
> Quantization Range in their EDID will understand that full range is transmitted
> by the HDMI output. This is consistent to how the Nvidia's driver behaves.
>
> Signed-off-by: Hans Verkuil <hverkuil-cisco at xs4all.nl>
Reviewed-by: Ben Skeggs <bskeggs at redhat.com>

> ---
> diff --git a/drivers/gpu/drm/nouveau/dispnv50/disp.c b/drivers/gpu/drm/nouveau/dispnv50/disp.c
> index d7b9f7f8c9e3..b05c01927fe6 100644
> --- a/drivers/gpu/drm/nouveau/dispnv50/disp.c
> +++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c
> @@ -852,6 +852,9 @@ nv50_hdmi_enable(struct drm_encoder *encoder, struct nouveau_crtc *nv_crtc,
>         ret = drm_hdmi_avi_infoframe_from_display_mode(&avi_frame.avi,
>                                                        &nv_connector->base, mode);
>         if (!ret) {
> +               drm_hdmi_avi_infoframe_quant_range(&avi_frame.avi,
> +                                                  &nv_connector->base, mode,
> +                                                  HDMI_QUANTIZATION_RANGE_FULL);
>                 /* We have an AVI InfoFrame, populate it to the display */
>                 args.pwr.avi_infoframe_length
>                         = hdmi_infoframe_pack(&avi_frame, args.infoframes, 17);


More information about the dri-devel mailing list