drm/xe/tuning: Add missing engine class rules for LRC tuning
authorMatt Roper <matthew.d.roper@intel.com>
Fri, 29 Sep 2023 23:03:33 +0000 (16:03 -0700)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 21 Dec 2023 16:42:03 +0000 (11:42 -0500)
The LRC tuning settings we have today are modifying registers that are
part of the RCS engine's context; they're not part of the general CSFE
context that would apply to all engines.  Add ENGINE_CLASS(RENDER) to
the RTP rules to properly restrict these to the RCS.

Bspec: 46255, 46261
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://lore.kernel.org/r/20230929230332.3348841-2-matthew.d.roper@intel.com
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_tuning.c

index 412e59de984240bf4170b7b0ca4d7598ca8cd1d3..08174dda9bc734adbb6b315d6aadc95e806fb3dc 100644 (file)
@@ -29,7 +29,7 @@ static const struct xe_rtp_entry_sr gt_tunings[] = {
 
 static const struct xe_rtp_entry_sr lrc_tunings[] = {
        { XE_RTP_NAME("Tuning: ganged timer, also known as 16011163337"),
-         XE_RTP_RULES(GRAPHICS_VERSION_RANGE(1200, 1210)),
+         XE_RTP_RULES(GRAPHICS_VERSION_RANGE(1200, 1210), ENGINE_CLASS(RENDER)),
          /* read verification is ignored due to 1608008084. */
          XE_RTP_ACTIONS(FIELD_SET_NO_READ_MASK(FF_MODE2,
                                                FF_MODE2_GS_TIMER_MASK,
@@ -39,19 +39,19 @@ static const struct xe_rtp_entry_sr lrc_tunings[] = {
        /* DG2 */
 
        { XE_RTP_NAME("Tuning: L3 cache"),
-         XE_RTP_RULES(PLATFORM(DG2)),
+         XE_RTP_RULES(PLATFORM(DG2), ENGINE_CLASS(RENDER)),
          XE_RTP_ACTIONS(FIELD_SET(XEHP_L3SQCREG5, L3_PWM_TIMER_INIT_VAL_MASK,
                                   REG_FIELD_PREP(L3_PWM_TIMER_INIT_VAL_MASK, 0x7f)))
        },
        { XE_RTP_NAME("Tuning: TDS gang timer"),
-         XE_RTP_RULES(PLATFORM(DG2)),
+         XE_RTP_RULES(PLATFORM(DG2), ENGINE_CLASS(RENDER)),
          /* read verification is ignored as in i915 - need to check enabling */
          XE_RTP_ACTIONS(FIELD_SET_NO_READ_MASK(XEHP_FF_MODE2,
                                                FF_MODE2_TDS_TIMER_MASK,
                                                FF_MODE2_TDS_TIMER_128))
        },
        { XE_RTP_NAME("Tuning: TBIMR fast clip"),
-         XE_RTP_RULES(PLATFORM(DG2)),
+         XE_RTP_RULES(PLATFORM(DG2), ENGINE_CLASS(RENDER)),
          XE_RTP_ACTIONS(SET(CHICKEN_RASTER_2, TBIMR_FAST_CLIP))
        },
        {}