[Intel-gfx] [PATCH] drm/i915/icl: avoid unclaimed PLANE_NV12_BUF_CFG register

Kumar, Mahesh mahesh1.kumar at intel.com
Wed Aug 1 14:59:22 UTC 2018


Hi,

Reviewed-by: Mahesh Kumar <mahesh1.kumar at intel.com>

-Mahesh
On 8/1/2018 6:16 AM, Paulo Zanoni wrote:
> We don't have proper watermark NV12 support on ICL due to differences
> in how it should be implemented. In commit 234059da0f33
> ("drm/i915/icl: NV12 y-plane ddb is not in same plane") we avoided
> writing the non-existent PLANE_NV12_BUF_CFG registers but we forgot to
> also avoid them on the hardware state readout. While the code is still
> not correct, at least now we can avoid unclaimed register error
> messages when dealing with RGB formats, which makes CI happier.
>
> Also add some FIXME comments in order to make it even more clear that
> there's still work to do.
>
> References: commit 234059da0f33 ("drm/i915/icl: NV12 y-plane ddb is
>   not in same plane")
> Cc: Mahesh Kumar <mahesh1.kumar at intel.com>
> Signed-off-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
> ---
>   drivers/gpu/drm/i915/intel_pm.c | 8 +++++++-
>   1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index 2531eb75bdce..04cef1369e8c 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -3909,7 +3909,12 @@ skl_ddb_get_hw_plane_state(struct drm_i915_private *dev_priv,
>   				      val & PLANE_CTL_ALPHA_MASK);
>   
>   	val = I915_READ(PLANE_BUF_CFG(pipe, plane_id));
> -	val2 = I915_READ(PLANE_NV12_BUF_CFG(pipe, plane_id));
> +	/*
> +	 * FIXME: add proper NV12 support for ICL. Avoid reading unclaimed
> +	 * registers for now.
> +	 */
> +	if (INTEL_GEN(dev_priv) < 11)
> +		val2 = I915_READ(PLANE_NV12_BUF_CFG(pipe, plane_id));
>   
>   	if (fourcc == DRM_FORMAT_NV12) {
>   		skl_ddb_entry_init_from_hw(dev_priv,
> @@ -4977,6 +4982,7 @@ static void skl_write_plane_wm(struct intel_crtc *intel_crtc,
>   
>   	skl_ddb_entry_write(dev_priv, PLANE_BUF_CFG(pipe, plane_id),
>   			    &ddb->plane[pipe][plane_id]);
> +	/* FIXME: add proper NV12 support for ICL. */
>   	if (INTEL_GEN(dev_priv) >= 11)
>   		return skl_ddb_entry_write(dev_priv,
>   					   PLANE_BUF_CFG(pipe, plane_id),

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20180801/78c2256f/attachment.html>


More information about the Intel-gfx mailing list