[PATCH 5/5] drm/edid: Set YQ bits in the AVI infoframe according to CEA-861-F

Jani Nikula jani.nikula at linux.intel.com
Thu Jan 12 10:13:47 UTC 2017


On Wed, 11 Jan 2017, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> CEA-861-F tells us:
> "When transmitting any RGB colorimetry, the Source should set the
>  YQ-field to match the RGB Quantization Range being transmitted
>  (e.g., when Limited Range RGB, set YQ=0 or when Full Range RGB,
>  set YQ=1) and the Sink shall ignore the YQ-field."
>
> So let's go ahead and do that. Perhaps there are sinks that don't
> ignore the YQ as they should for RGB?
>
> I wasn't able to find similar text in CEA-861-E, so it would seem
> to be a fairly "recent" addition.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
>  drivers/gpu/drm/drm_edid.c | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
> index caa2435bac31..6ba9a1a6eae4 100644
> --- a/drivers/gpu/drm/drm_edid.c
> +++ b/drivers/gpu/drm/drm_edid.c
> @@ -4320,6 +4320,20 @@ drm_hdmi_avi_infoframe_quant_range(struct hdmi_avi_infoframe *frame,
>  		frame->quantization_range = rgb_quant_range;
>  	else
>  		frame->quantization_range = HDMI_QUANTIZATION_RANGE_DEFAULT;
> +
> +	/*
> +	 * CEA-861-F:
> +	 * "When transmitting any RGB colorimetry, the Source should set the
> +	 *  YQ-field to match the RGB Quantization Range being transmitted
> +	 *  (e.g., when Limited Range RGB, set YQ=0 or when Full Range RGB,
> +	 *  set YQ=1) and the Sink shall ignore the YQ-field."
> +	 */

*rolls eyes* but that's what the spec says.

> +	if (rgb_quant_range == HDMI_QUANTIZATION_RANGE_LIMITED)
> +		frame->ycc_quantization_range =
> +			HDMI_YCC_QUANTIZATION_RANGE_LIMITED;
> +	else
> +		frame->ycc_quantization_range =
> +			HDMI_YCC_QUANTIZATION_RANGE_FULL;

Shouldn't this take into account QS=0 and rgb_quant_range != default?

BR,
Jani.



>  }
>  EXPORT_SYMBOL(drm_hdmi_avi_infoframe_quant_range);

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the dri-devel mailing list