drm/i915: Skip fence alignemnt check for the CCS plane
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 24 Aug 2017 19:10:50 +0000 (22:10 +0300)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Wed, 30 Aug 2017 19:08:20 +0000 (12:08 -0700)
The CCS won't have the same stride as the main surface anyway so trying
to guard against the fence stride not matching the CCS stride is
not sensible. Just skip the fence vs. fb alignment check for the aux
plane.

Cc: Ben Widawsky <ben@bwidawsk.net>
Cc: Jason Ekstrand <jason@jlekstrand.net>
Cc: Daniel Stone <daniels@collabora.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20170824191100.10949-3-ville.syrjala@linux.intel.com
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Fixes: 2e2adb05736c ("drm/i915: Add render decompression support")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
(cherry picked from commit 2ec4cf4057fcb98cb4cabdd57fa12357e438ae98)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/intel_display.c

index 8578739a0c31c6491e6fbdac9bc4d795154aba00..f17275519484bd8f598401269959c038fe139171 100644 (file)
@@ -2589,7 +2589,7 @@ intel_fill_fb_info(struct drm_i915_private *dev_priv,
                 * fb layout agrees with the fence layout. We already check that the
                 * fb stride matches the fence stride elsewhere.
                 */
-               if (i915_gem_object_is_tiled(intel_fb->obj) &&
+               if (i == 0 && i915_gem_object_is_tiled(intel_fb->obj) &&
                    (x + width) * cpp > fb->pitches[i]) {
                        DRM_DEBUG_KMS("bad fb plane %d offset: 0x%x\n",
                                      i, fb->offsets[i]);