]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915: Clean up gen3 hotplug irq setup
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 27 Sep 2024 14:35:43 +0000 (17:35 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 1 Oct 2024 15:31:43 +0000 (18:31 +0300)
For the "always on/unmasked" interrupts we initialize
dev_priv->irq_mask first, then enable_mask. Follow the
same order for the hotplug interrupt so that things are
a bit less confusing.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240927143545.8665-3-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/i915_irq.c

index a784803f709aea5fcb768028483278c99fb05b5e..ee7a2a49f08e58c5e3abab4548ba4e507067063e 100644 (file)
@@ -1065,10 +1065,10 @@ static void i915_irq_postinstall(struct drm_i915_private *dev_priv)
                I915_USER_INTERRUPT;
 
        if (I915_HAS_HOTPLUG(dev_priv)) {
-               /* Enable in IER... */
-               enable_mask |= I915_DISPLAY_PORT_INTERRUPT;
                /* and unmask in IMR */
                dev_priv->irq_mask &= ~I915_DISPLAY_PORT_INTERRUPT;
+               /* Enable in IER... */
+               enable_mask |= I915_DISPLAY_PORT_INTERRUPT;
        }
 
        GEN3_IRQ_INIT(uncore, GEN2_, dev_priv->irq_mask, enable_mask);