]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/xe: move DPT l2 flush to a more sensible place
authorMatthew Auld <matthew.auld@intel.com>
Fri, 6 Jun 2025 10:45:48 +0000 (11:45 +0100)
committerLucas De Marchi <lucas.demarchi@intel.com>
Tue, 24 Jun 2025 17:42:35 +0000 (10:42 -0700)
Only need the flush for DPT host updates here. Normal GGTT updates don't
need special flush.

Fixes: 01570b446939 ("drm/xe/bmg: implement Wa_16023588340")
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: stable@vger.kernel.org # v6.12+
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://lore.kernel.org/r/20250606104546.1996818-4-matthew.auld@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/gpu/drm/xe/display/xe_fb_pin.c

index 6b362695d6b6188e1afeff30437edc7b2f6d944d..5e846f0bec21e29679fd98ee11eef0ac825bf592 100644 (file)
@@ -163,6 +163,9 @@ static int __xe_pin_fb_vma_dpt(const struct intel_framebuffer *fb,
 
        vma->dpt = dpt;
        vma->node = dpt->ggtt_node[tile0->id];
+
+       /* Ensure DPT writes are flushed */
+       xe_device_l2_flush(xe);
        return 0;
 }
 
@@ -326,8 +329,6 @@ static struct i915_vma *__xe_pin_fb_vma(const struct intel_framebuffer *fb,
        if (ret)
                goto err_unpin;
 
-       /* Ensure DPT writes are flushed */
-       xe_device_l2_flush(xe);
        return vma;
 
 err_unpin: