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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@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))'

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)





[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux