]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/xe/xe3: Add WA_14024681466 for Xe3_LPG
authorNitin Gote <nitin.r.gote@intel.com>
Mon, 27 Oct 2025 09:26:43 +0000 (14:56 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 24 Nov 2025 09:37:49 +0000 (10:37 +0100)
commit 0b2f7be548006b0651e1e8320790f49723265cbc upstream.

Apply WA_14024681466 to Xe3_LPG graphics IP versions from 30.00 to 30.05.

v2: (Matthew Roper)
   - Remove stepping filter as workaround applies to all steppings.
   - Add an engine class filter so it only applies to the RENDER engine.

Signed-off-by: Nitin Gote <nitin.r.gote@intel.com>
Link: https://patch.msgid.link/20251027092643.335904-1-nitin.r.gote@intel.com
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
(cherry picked from commit 071089a69e199bd810ff31c4c933bd528e502743)
Cc: stable@vger.kernel.org # v6.16+
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/xe/regs/xe_gt_regs.h
drivers/gpu/drm/xe/xe_wa.c

index 9994887fc73f97d60121a12fe1c840d31e3cb073..8b115bdc387d274c800e89149337211bde745c54 100644 (file)
 
 #define XEHP_SLICE_COMMON_ECO_CHICKEN1         XE_REG_MCR(0x731c, XE_REG_OPTION_MASKED)
 #define   MSC_MSAA_REODER_BUF_BYPASS_DISABLE   REG_BIT(14)
+#define   FAST_CLEAR_VALIGN_FIX                        REG_BIT(13)
 
 #define XE2LPM_CCCHKNREG1                      XE_REG(0x82a8)
 
index 08a865a826b9e34acb4d25b0c6946c6d87166143..c95c22a5ccaf6c5cb14fe0a3195696ab4d66d389 100644 (file)
@@ -890,6 +890,10 @@ static const struct xe_rtp_entry_sr lrc_was[] = {
                       ENGINE_CLASS(RENDER)),
          XE_RTP_ACTIONS(SET(CHICKEN_RASTER_1, DIS_CLIP_NEGATIVE_BOUNDING_BOX))
        },
+       { XE_RTP_NAME("14024681466"),
+         XE_RTP_RULES(GRAPHICS_VERSION_RANGE(3000, 3005), ENGINE_CLASS(RENDER)),
+         XE_RTP_ACTIONS(SET(XEHP_SLICE_COMMON_ECO_CHICKEN1, FAST_CLEAR_VALIGN_FIX))
+       },
 };
 
 static __maybe_unused const struct xe_rtp_entry oob_was[] = {