On Wed, Apr 09, 2025 at 09:47:02PM +0300, Jani Nikula wrote: > Observe that ibx_irq_reset() is really ibx_display_irq_reset(). Make it > so. Move to display, and call it directly from gen8_display_irq_reset() > instead of gen8_irq_reset(). > > Remove a nearby ancient stale comment while at it. > > Signed-off-by: Jani Nikula <[email protected]> > --- > .../gpu/drm/i915/display/intel_display_irq.c | 17 ++++++++++++++ > .../gpu/drm/i915/display/intel_display_irq.h | 1 + > drivers/gpu/drm/i915/i915_irq.c | 22 ++----------------- > 3 files changed, 20 insertions(+), 20 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.c > b/drivers/gpu/drm/i915/display/intel_display_irq.c > index d2a35e3630b1..0acb3b46d909 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_irq.c > +++ b/drivers/gpu/drm/i915/display/intel_display_irq.c > @@ -1960,8 +1960,22 @@ void vlv_display_irq_postinstall(struct intel_display > *display) > intel_display_irq_regs_init(display, VLV_IRQ_REGS, dev_priv->irq_mask, > enable_mask); > } > > +void ibx_display_irq_reset(struct intel_display *display) > +{ > + struct drm_i915_private *i915 = to_i915(display->drm); > + > + if (HAS_PCH_NOP(i915)) > + return; > + > + gen2_irq_reset(to_intel_uncore(display->drm), SDE_IRQ_REGS); > + > + if (HAS_PCH_CPT(i915) || HAS_PCH_LPT(i915)) > + intel_de_write(display, SERR_INT, 0xffffffff); > +} > + > void gen8_display_irq_reset(struct intel_display *display) > { > + struct drm_i915_private *i915 = to_i915(display->drm); > enum pipe pipe; > > if (!HAS_DISPLAY(display)) > @@ -1977,6 +1991,9 @@ void gen8_display_irq_reset(struct intel_display > *display) > > intel_display_irq_regs_reset(display, GEN8_DE_PORT_IRQ_REGS); > intel_display_irq_regs_reset(display, GEN8_DE_MISC_IRQ_REGS); > + > + if (HAS_PCH_SPLIT(i915)) > + ibx_display_irq_reset(display); > } > > void gen11_display_irq_reset(struct intel_display *display) > diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.h > b/drivers/gpu/drm/i915/display/intel_display_irq.h > index f72727768351..c0efda1c949c 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_irq.h > +++ b/drivers/gpu/drm/i915/display/intel_display_irq.h > @@ -54,6 +54,7 @@ u32 gen11_gu_misc_irq_ack(struct intel_display *display, > const u32 master_ctl); > void gen11_gu_misc_irq_handler(struct intel_display *display, const u32 iir); > > void i9xx_display_irq_reset(struct intel_display *display); > +void ibx_display_irq_reset(struct intel_display *display); > void vlv_display_irq_reset(struct intel_display *display); > void gen8_display_irq_reset(struct intel_display *display); > void gen11_display_irq_reset(struct intel_display *display); > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c > index c1f938a1da44..d06694d6531e 100644 > --- a/drivers/gpu/drm/i915/i915_irq.c > +++ b/drivers/gpu/drm/i915/i915_irq.c > @@ -658,23 +658,9 @@ static irqreturn_t dg1_irq_handler(int irq, void *arg) > return IRQ_HANDLED; > } > > -static void ibx_irq_reset(struct drm_i915_private *dev_priv) > -{ > - struct intel_uncore *uncore = &dev_priv->uncore; > - > - if (HAS_PCH_NOP(dev_priv)) > - return; > - > - gen2_irq_reset(uncore, SDE_IRQ_REGS); > - > - if (HAS_PCH_CPT(dev_priv) || HAS_PCH_LPT(dev_priv)) > - intel_uncore_write(&dev_priv->uncore, SERR_INT, 0xffffffff); > -} > - > -/* drm_dma.h hooks > -*/ > static void ilk_irq_reset(struct drm_i915_private *dev_priv) > { > + struct intel_display *display = &dev_priv->display; > struct intel_uncore *uncore = &dev_priv->uncore; > > gen2_irq_reset(uncore, DE_IRQ_REGS); > @@ -690,7 +676,7 @@ static void ilk_irq_reset(struct drm_i915_private > *dev_priv) > > gen5_gt_irq_reset(to_gt(dev_priv)); > > - ibx_irq_reset(dev_priv); > + ibx_display_irq_reset(display);
I guess we should extract ilk_display_irq_reset() at some point... This one is Reviewed-by: Ville Syrjälä <[email protected]> > } > > static void valleyview_irq_reset(struct drm_i915_private *dev_priv) > @@ -717,10 +703,6 @@ static void gen8_irq_reset(struct drm_i915_private > *dev_priv) > gen8_gt_irq_reset(to_gt(dev_priv)); > gen8_display_irq_reset(display); > gen2_irq_reset(uncore, GEN8_PCU_IRQ_REGS); > - > - if (HAS_PCH_SPLIT(dev_priv)) > - ibx_irq_reset(dev_priv); > - > } > > static void gen11_irq_reset(struct drm_i915_private *dev_priv) > -- > 2.39.5 -- Ville Syrjälä Intel
