return emit_oa_config(stream, oa_config, oa_context(stream));
 }
 
+static u32 oag_report_ctx_switches(const struct i915_perf_stream *stream)
+{
+       return _MASKED_FIELD(GEN12_OAG_OA_DEBUG_DISABLE_CTX_SWITCH_REPORTS,
+                            (stream->sample_flags & SAMPLE_OA_REPORT) ?
+                            0 : GEN12_OAG_OA_DEBUG_DISABLE_CTX_SWITCH_REPORTS);
+}
+
 static int gen12_enable_metric_set(struct i915_perf_stream *stream)
 {
        struct intel_uncore *uncore = stream->uncore;
                           _MASKED_BIT_ENABLE(GEN12_OAG_OA_DEBUG_DISABLE_CLK_RATIO_REPORTS |
                                              GEN12_OAG_OA_DEBUG_INCLUDE_CLK_RATIO) |
                           /*
-                           * If the user didn't require OA reports, instruct the
-                           * hardware not to emit ctx switch reports.
+                           * If the user didn't require OA reports, instruct
+                           * the hardware not to emit ctx switch reports.
                            */
-                          !(stream->sample_flags & SAMPLE_OA_REPORT) ?
-                          _MASKED_BIT_ENABLE(GEN12_OAG_OA_DEBUG_DISABLE_CTX_SWITCH_REPORTS) :
-                          _MASKED_BIT_DISABLE(GEN12_OAG_OA_DEBUG_DISABLE_CTX_SWITCH_REPORTS));
+                          oag_report_ctx_switches(stream));
 
        intel_uncore_write(uncore, GEN12_OAG_OAGLBCTXCTRL, periodic ?
                           (GEN12_OAG_OAGLBCTXCTRL_COUNTER_RESUME |