On Tue, 15 Aug 2023 10:36:15 -0700, Matt Roper wrote: > Hi Matt,
> diff --git a/drivers/gpu/drm/i915/i915_perf.c > b/drivers/gpu/drm/i915/i915_perf.c > index 04bc1f4a1115..eadbfd2fb9e5 100644 > --- a/drivers/gpu/drm/i915/i915_perf.c > +++ b/drivers/gpu/drm/i915/i915_perf.c > @@ -3381,25 +3381,6 @@ static int i915_oa_stream_init(struct i915_perf_stream > *stream, > intel_engine_pm_get(stream->engine); > intel_uncore_forcewake_get(stream->uncore, FORCEWAKE_ALL); > > - /* > - * Wa_16011777198:dg2: GuC resets render as part of the Wa. This causes > - * OA to lose the configuration state. Prevent this by overriding GUCRC > - * mode. > - */ > - if (intel_uc_uses_guc_rc(>->uc) && > - (IS_DG2_GRAPHICS_STEP(gt->i915, G10, STEP_A0, STEP_C0) || > - IS_DG2_GRAPHICS_STEP(gt->i915, G11, STEP_A0, STEP_B0))) { > - ret = intel_guc_slpc_override_gucrc_mode(>->uc.guc.slpc, > - > SLPC_GUCRC_MODE_GUCRC_NO_RC6); > - if (ret) { > - drm_dbg(&stream->perf->i915->drm, > - "Unable to override gucrc mode\n"); > - goto err_gucrc; > - } > - > - stream->override_gucrc = true; > - } > - > ret = alloc_oa_buffer(stream); > if (ret) > goto err_oa_buf_alloc; > @@ -3439,7 +3420,6 @@ static int i915_oa_stream_init(struct i915_perf_stream > *stream, > if (stream->override_gucrc) > intel_guc_slpc_unset_gucrc_mode(>->uc.guc.slpc); > > -err_gucrc: > intel_uncore_forcewake_put(stream->uncore, FORCEWAKE_ALL); > intel_engine_pm_put(stream->engine); > If we are deleting this, let's basically remove all references to "gucrc" in this file and includes. So: * clean up the error path * Remove stream->override_gucrc * clean up i915_oa_stream_destroy Maybe the functions intel_guc_slpc_unset_gucrc_mode and intel_guc_slpc_override_gucrc_mode can also be removed. Let's wait to hear from Umesh/Vinay (Cc'd) who implemented this stuff. Thanks. -- Ashutosh