@@ -740,6 +740,8 @@ static void err_print_gt_global_nonguc(struct drm_i915_error_state_buf *m,
err_printf(m, "GT awake: %s\n", str_yes_no(gt->awake));
err_printf(m, "CS timestamp frequency: %u Hz, %d ns\n",
gt->clock_frequency, gt->clock_period_ns);
+ err_printf(m, "RPS thresholds up/down: %u/%u %%\n",
+ gt->rps.up_threshold, gt->rps.down_threshold);
err_printf(m, "EIR: 0x%08x\n", gt->eir);
err_printf(m, "PGTBL_ER: 0x%08x\n", gt->pgtbl_er);
@@ -2025,6 +2027,9 @@ intel_gt_coredump_alloc(struct intel_gt *gt, gfp_t gfp, u32 dump_flags)
gc->_gt = gt;
gc->awake = intel_gt_pm_is_awake(gt);
+ gc->rps.up_threshold = gt->rps.power.up_threshold;
+ gc->rps.down_threshold = gt->rps.power.down_threshold;
+
gt_record_display_regs(gc);
gt_record_global_nonguc_regs(gc);
@@ -140,6 +140,11 @@ struct intel_gt_coredump {
bool awake;
bool simulated;
+ struct {
+ u8 up_threshold;
+ u8 down_threshold;
+ } rps;
+
struct intel_gt_info info;
/* Generic register state */