summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2025-02-08 00:31:59 +0200
committerVille Syrjälä <ville.syrjala@linux.intel.com>2025-02-12 21:00:01 +0200
commitf9f34d44c7d3cecd3e821d8a22d3fd88c972d0bf (patch)
treeda1cc30259e940e2efdaf857a63cea04fce378ae
parentc3571a239e108fe92adedd49ca3905d435093157 (diff)
drm/i915/dsb: Decode DSB error interrupts
Decode the DSB error interrupts into human readable form for easier debugging. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250207223159.14132-9-ville.syrjala@linux.intel.com Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
-rw-r--r--drivers/gpu/drm/i915/display/intel_dsb.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_dsb.c b/drivers/gpu/drm/i915/display/intel_dsb.c
index aba57ddfbb92..db69b1c676f7 100644
--- a/drivers/gpu/drm/i915/display/intel_dsb.c
+++ b/drivers/gpu/drm/i915/display/intel_dsb.c
@@ -860,7 +860,16 @@ void intel_dsb_irq_handler(struct intel_display *display,
}
errors = tmp & dsb_error_int_status(display);
- if (errors)
- drm_err(display->drm, "[CRTC:%d:%s] DSB %d error interrupt: 0x%x\n",
- crtc->base.base.id, crtc->base.name, dsb_id, errors);
+ if (errors & DSB_ATS_FAULT_INT_STATUS)
+ drm_err(display->drm, "[CRTC:%d:%s] DSB %d ATS fault\n",
+ crtc->base.base.id, crtc->base.name, dsb_id);
+ if (errors & DSB_GTT_FAULT_INT_STATUS)
+ drm_err(display->drm, "[CRTC:%d:%s] DSB %d GTT fault\n",
+ crtc->base.base.id, crtc->base.name, dsb_id);
+ if (errors & DSB_RSPTIMEOUT_INT_STATUS)
+ drm_err(display->drm, "[CRTC:%d:%s] DSB %d response timeout\n",
+ crtc->base.base.id, crtc->base.name, dsb_id);
+ if (errors & DSB_POLL_ERR_INT_STATUS)
+ drm_err(display->drm, "[CRTC:%d:%s] DSB %d poll error\n",
+ crtc->base.base.id, crtc->base.name, dsb_id);
}