From: Ville Syrjälä <[email protected]> Display is the only current user of GSE interrupts. Keep the GSE interrupt masked on icl+ if there is no display.
Signed-off-by: Ville Syrjälä <[email protected]> --- drivers/gpu/drm/i915/i915_irq.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 823d97284d78..5476472d33bd 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -36,6 +36,7 @@ #include <drm/intel/display_parent_interface.h> #include <drm/intel/intel_gmd_interrupt_regs.h> +#include "display/intel_display_device.h" #include "display/intel_display_irq.h" #include "gt/intel_breadcrumbs.h" @@ -727,9 +728,13 @@ static void gen8_irq_postinstall(struct drm_i915_private *dev_priv) static void gen11_gu_misc_irq_postinstall(struct drm_i915_private *dev_priv) { + struct intel_display *display = dev_priv->display; struct intel_gt *gt = to_gt(dev_priv); struct intel_uncore *uncore = gt->uncore; - u32 gu_misc_masked = GEN11_GU_MISC_GSE; + u32 gu_misc_masked = 0; + + if (intel_display_device_present(display)) + gu_misc_masked |= GEN11_GU_MISC_GSE; gen2_irq_init(uncore, GEN11_GU_MISC_IRQ_REGS, ~gu_misc_masked, gu_misc_masked); } -- 2.56.0
