• Ville Syrjälä's avatar
    drm/i915: Stop pretending to mask/unmask LPE audio interrupts · ebf5f921
    Ville Syrjälä authored
    vlv_display_irq_postinstall() enables the LPE audio interrupts
    regardless of whether the LPE audio irq chip has masked/unmasked
    them. Also the irqchip masking/unmasking doesn't consider the state
    of the display power well or the device, and hence just leads to
    dmesg spew when it tries to access the hardware while it's powered
    down.
    
    If the current way works, then we don't need to do anything in the
    mask/unmask hooks. If it doesn't work, well, then we'd need to properly
    track whether the irqchip has masked/unmasked the interrupts when
    we enable display interrupts. And the mask/unmask hooks would need
    to check whether display interrupts are even enabled before frobbing
    with he registers.
    
    So let's just assume the current way works and neuter the mask/unmask
    hooks. Also clean up vlv_display_irq_postinstall() a bit and stop
    it from trying to unmask/enable the LPE C interrupt on VLV since it
    doesn't exist.
    
    Cc: Takashi Iwai <tiwai@suse.de>
    Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Link: http://patchwork.freedesktop.org/patch/msgid/20170427160231.13337-4-ville.syrjala@linux.intel.comReviewed-by: default avatarTakashi Iwai <tiwai@suse.de>
    ebf5f921
i915_irq.c 123 KB