Quoting Jani Nikula (2025-05-06 10:06:44-03:00) >All users of valleyview_enable_display_irqs() and >valleyview_disable_display_irqs() have a lock/unlock pair. Move the >locking inside the functions. > >Signed-off-by: Jani Nikula <[email protected]>
Reviewed-by: Gustavo Sousa <[email protected]> >--- > drivers/gpu/drm/i915/display/intel_display_irq.c | 13 +++++++++---- > .../gpu/drm/i915/display/intel_display_power_well.c | 5 ----- > 2 files changed, 9 insertions(+), 9 deletions(-) > >diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.c >b/drivers/gpu/drm/i915/display/intel_display_irq.c >index 22bb0fc10736..3d2294a4d83d 100644 >--- a/drivers/gpu/drm/i915/display/intel_display_irq.c >+++ b/drivers/gpu/drm/i915/display/intel_display_irq.c >@@ -2117,10 +2117,10 @@ void valleyview_enable_display_irqs(struct >intel_display *display) > { > struct drm_i915_private *dev_priv = to_i915(display->drm); > >- lockdep_assert_held(&dev_priv->irq_lock); >+ spin_lock_irq(&dev_priv->irq_lock); > > if (display->irq.vlv_display_irqs_enabled) >- return; >+ goto out; > > display->irq.vlv_display_irqs_enabled = true; > >@@ -2128,21 +2128,26 @@ void valleyview_enable_display_irqs(struct >intel_display *display) > _vlv_display_irq_reset(display); > vlv_display_irq_postinstall(display); > } >+ >+out: >+ spin_unlock_irq(&dev_priv->irq_lock); > } > > void valleyview_disable_display_irqs(struct intel_display *display) > { > struct drm_i915_private *dev_priv = to_i915(display->drm); > >- lockdep_assert_held(&dev_priv->irq_lock); >+ spin_lock_irq(&dev_priv->irq_lock); > > if (!display->irq.vlv_display_irqs_enabled) >- return; >+ goto out; > > display->irq.vlv_display_irqs_enabled = false; > > if (intel_irqs_enabled(dev_priv)) > _vlv_display_irq_reset(display); >+out: >+ spin_unlock_irq(&dev_priv->irq_lock); > } > > void ilk_de_irq_postinstall(struct intel_display *display) >diff --git a/drivers/gpu/drm/i915/display/intel_display_power_well.c >b/drivers/gpu/drm/i915/display/intel_display_power_well.c >index 6335fa909a7b..b104bce0e14d 100644 >--- a/drivers/gpu/drm/i915/display/intel_display_power_well.c >+++ b/drivers/gpu/drm/i915/display/intel_display_power_well.c >@@ -1212,7 +1212,6 @@ static void vlv_init_display_clock_gating(struct >intel_display *display) > > static void vlv_display_power_well_init(struct intel_display *display) > { >- struct drm_i915_private *dev_priv = to_i915(display->drm); > struct intel_encoder *encoder; > enum pipe pipe; > >@@ -1236,9 +1235,7 @@ static void vlv_display_power_well_init(struct >intel_display *display) > > vlv_init_display_clock_gating(display); > >- spin_lock_irq(&dev_priv->irq_lock); > valleyview_enable_display_irqs(display); >- spin_unlock_irq(&dev_priv->irq_lock); > > /* > * During driver initialization/resume we can avoid restoring the >@@ -1265,9 +1262,7 @@ static void vlv_display_power_well_deinit(struct >intel_display *display) > { > struct drm_i915_private *dev_priv = to_i915(display->drm); > >- spin_lock_irq(&dev_priv->irq_lock); > valleyview_disable_display_irqs(display); >- spin_unlock_irq(&dev_priv->irq_lock); > > /* make sure we're done processing display irqs */ > intel_synchronize_irq(dev_priv); >-- >2.39.5 >
