Commit f9f34d44 authored by Ville Syrjälä's avatar Ville Syrjälä
Browse files

drm/i915/dsb: Decode DSB error interrupts



Decode the DSB error interrupts into human readable
form for easier debugging.

Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250207223159.14132-9-ville.syrjala@linux.intel.com


Reviewed-by: default avatarAnkit Nautiyal <ankit.k.nautiyal@intel.com>
parent c3571a23
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -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);
}