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

Juha-Pekka Heikkila juhapekka.heikkila at gmail.com
Thu Jan 25 15:56:06 UTC 2024


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.

> 
>>   	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