On Thu, 05 Nov 2026, Ville Syrjala <[email protected]> wrote: > From: Ville Syrjälä <[email protected]> > > Both gen11 and dg1 duplicate the same code to set up the > GEN11_GU_MISC interrupts. Extract it to a shared helper. > > Signed-off-by: Ville Syrjälä <[email protected]> > --- > drivers/gpu/drm/i915/i915_irq.c | 16 ++++++++++++---- > 1 file changed, 12 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c > index 12082167face..823d97284d78 100644 > --- a/drivers/gpu/drm/i915/i915_irq.c > +++ b/drivers/gpu/drm/i915/i915_irq.c > @@ -725,17 +725,26 @@ static void gen8_irq_postinstall(struct > drm_i915_private *dev_priv) > gen8_master_intr_enable(intel_uncore_regs(&dev_priv->uncore)); > } > > +static void gen11_gu_misc_irq_postinstall(struct drm_i915_private *dev_priv) > +{ > + struct intel_gt *gt = to_gt(dev_priv); > + struct intel_uncore *uncore = gt->uncore;
That's a roundabout path to uncore, but *shrug*. Reviewed-by: Jani Nikula <[email protected]> > + u32 gu_misc_masked = GEN11_GU_MISC_GSE; > + > + gen2_irq_init(uncore, GEN11_GU_MISC_IRQ_REGS, ~gu_misc_masked, > gu_misc_masked); > +} > + > static void gen11_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; > > gen11_gt_irq_postinstall(gt); > + > intel_display_irq_postinstall(display); > > - gen2_irq_init(uncore, GEN11_GU_MISC_IRQ_REGS, ~gu_misc_masked, > gu_misc_masked); > + gen11_gu_misc_irq_postinstall(dev_priv); > > gen11_master_intr_enable(intel_uncore_regs(uncore)); > intel_uncore_posting_read(&dev_priv->uncore, GEN11_GFX_MSTR_IRQ); > @@ -745,14 +754,13 @@ static void dg1_irq_postinstall(struct drm_i915_private > *dev_priv) > { > struct intel_display *display = dev_priv->display; > struct intel_uncore *uncore = &dev_priv->uncore; > - u32 gu_misc_masked = GEN11_GU_MISC_GSE; > struct intel_gt *gt; > unsigned int i; > > for_each_gt(gt, dev_priv, i) > gen11_gt_irq_postinstall(gt); > > - gen2_irq_init(uncore, GEN11_GU_MISC_IRQ_REGS, ~gu_misc_masked, > gu_misc_masked); > + gen11_gu_misc_irq_postinstall(dev_priv); > > intel_display_irq_postinstall(display); -- Jani Nikula, Intel
