[PATCH] drm/i915/display: Disable AuxCCS framebuffers if built for Xe

Souza, Jose jose.souza at intel.com
Thu Jan 25 16:07:05 UTC 2024


On Thu, 2024-01-25 at 17:56 +0200, Juha-Pekka Heikkila wrote:
> On 25.1.2024 17.28, Souza, Jose wrote:
> > 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 at gmail.com>
> > > ---
> > >   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))'
> 
> Hi Jose,
> 
> not sure I understood your idea. Here need to be disabled all versions 
> of aux ccs for Xe, not just mc ccs.

ah misplace this this...please ignore.

this is fine for something that will be fixed soon.

Reviewed-by: José Roberto de Souza <jose.souza at intel.com>



> 
> > 
> > >   	if (skl_plane_has_rc_ccs(i915, pipe, plane_id)) {
> > >   		caps |= INTEL_PLANE_CAP_CCS_RC;
> > >   		if (DISPLAY_VER(i915) >= 12)
> > 
> 



More information about the Intel-gfx mailing list