[PATCH] drm/i915/display: Disable AuxCCS framebuffers if built for Xe
Tvrtko Ursulin
tursulin at ursulin.net
Wed Jan 29 08:44:07 UTC 2025
On 28/01/2025 15:55, Juha-Pekka Heikkilä wrote:
> On Tue, Jan 28, 2025 at 3:08 PM Tvrtko Ursulin <tursulin at ursulin.net> wrote:
>>
>>
>> Hi,
>>
>> On 05/03/2024 16:44, Jani Nikula wrote:
>>> On Wed, 28 Feb 2024, Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com> 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
>>>> driver.
>>
>> I couldn't find the answer in the below linked issue or in the thread -
>> is it known what exactly is missing/broken to make this work and are
>> there any plans to do it? Or perhaps not if gen12lp is not intended to
>> be supported?
>
> As far as I know devices with AuxCCS are not intended to be supported.
>
> As for this patch, from display point of view these would work the same
> as before, just put compressed fb on screen and enable decompression
> but I figure there are parts missing from gem side to support AuxCCS.
Right, I can dig in and try to figure out what are those missing GEM
bits but I was hoping someone might know straight away to save me that
initial digging around.
Regards,
Tvrtko
>>>> Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/933
>>>> Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
>>>
>>> Acked-by: Jani Nikula <jani.nikula at intel.com>
>>>
>>>
>>>> ---
>>>> drivers/gpu/drm/i915/display/skl_universal_plane.c | 3 +++
>>>> 1 file changed, 3 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c
>>>> index e941e2e4fd14..860574d04f88 100644
>>>> --- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
>>>> +++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
>>>> @@ -2295,6 +2295,9 @@ static u8 skl_get_plane_caps(struct drm_i915_private *i915,
>>>> if (HAS_4TILE(i915))
>>>> caps |= INTEL_PLANE_CAP_TILING_4;
>>>>
>>>> + if (!IS_ENABLED(I915) && !HAS_FLAT_CCS(i915))
>>>> + return caps;
>>>> +
>>>> 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-xe
mailing list