[PATCH v2 05/25] drm/i915/xe2: Skip CCS modifiers for Xe2 platforms

Matt Roper matthew.d.roper at intel.com
Wed Apr 3 19:02:22 UTC 2024


On Wed, Apr 03, 2024 at 04:52:33PM +0530, Balasubramani Vivekanandan wrote:
> Xe2 platforms doesn't support Aux CCS and the Flat CCS is enabled
> through PAT. No CCS modifiers required for Xe2 platforms.

The change looks correct, but you might want to elaborate on this
description a bit to help clarify why having the compression status of a
buffer in the page table entries (via PAT) allows us to avoid the need
for dedicated framebuffer modifiers.


Matt

> 
> Signed-off-by: Balasubramani Vivekanandan <balasubramani.vivekanandan at intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_fb.c | 14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_fb.c b/drivers/gpu/drm/i915/display/intel_fb.c
> index 3ea6470d6d92..923e97c3aa6c 100644
> --- a/drivers/gpu/drm/i915/display/intel_fb.c
> +++ b/drivers/gpu/drm/i915/display/intel_fb.c
> @@ -431,9 +431,17 @@ static bool plane_has_modifier(struct drm_i915_private *i915,
>  	 * Separate AuxCCS and Flat CCS modifiers to be run only on platforms
>  	 * where supported.
>  	 */
> -	if (intel_fb_is_ccs_modifier(md->modifier) &&
> -	    HAS_FLAT_CCS(i915) != !md->ccs.packed_aux_planes)
> -		return false;
> +	if (intel_fb_is_ccs_modifier(md->modifier)) {
> +		/*
> +		 * No CCS modifiers available on Xe2 platforms as they don't
> +		 * support Aux CCS and the Flat CCS is enabled via PAT
> +		 */
> +		if ((DISPLAY_VER(i915) >= 20) || IS_BATTLEMAGE(i915))
> +			return false;
> +
> +		if (HAS_FLAT_CCS(i915) != !md->ccs.packed_aux_planes)
> +			return false;
> +	}
>  
>  	return true;
>  }
> -- 
> 2.25.1
> 

-- 
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation


More information about the Intel-gfx mailing list