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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 11 Nov 2021 at 01:58, Hans Verkuil <hverkuil-cisco@xxxxxxxxx> 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@xxxxxxxxx>
Reviewed-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

> ---
> 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);



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux