On Thu, 2024-01-25 at 17:25 +0200, Juha-Pekka Heikkila wrote: > AuxCCS framebuffers don't work on Xe driver hence disable them > from plane capabilities until they are fixed. FlatCCS framebuffers > work and they are left enabled. CCS is left untouched for i915 > deriver. > > Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/933 > Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/skl_universal_plane.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c > index 511dc1544854..1521d829525a 100644 > --- a/drivers/gpu/drm/i915/display/skl_universal_plane.c > +++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c > @@ -2290,6 +2290,14 @@ static u8 skl_get_plane_caps(struct drm_i915_private *i915, > if (HAS_4TILE(i915)) > caps |= INTEL_PLANE_CAP_TILING_4; > > + /* > + * FIXME: Below if(IS_ENABLED(CONFIG_I915)..) is because Xe driver > + * can't use AuxCCS framebuffers. Once they are fixed this need to be > + * removed. > + */ > + if (!IS_ENABLED(CONFIG_I915) && !HAS_FLAT_CCS(i915)) > + return caps; > + functional but looks odd. would rather add a check inside of gen12_plane_has_mc_ccs() or 'if ((!IS_ENABLED(CONFIG_I915) && !HAS_FLAT_CCS(i915)) && gen12_plane_has_mc_ccs(i915, plane_id))' > if (skl_plane_has_rc_ccs(i915, pipe, plane_id)) { > caps |= INTEL_PLANE_CAP_CCS_RC; > if (DISPLAY_VER(i915) >= 12)