From: Fabio Estevam Date: Tue, 12 May 2015 04:22:59 +0000 (-0300) Subject: ASoC: twl6040: Pass the IRQF_ONESHOT flag X-Git-Tag: firefly_0821_release~176^2~1082^2~116^2~1^3 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=208ba89b402d4f63a1352ae289fb8428cb92e7ec;p=firefly-linux-kernel-4.4.55.git ASoC: twl6040: Pass the IRQF_ONESHOT flag Since commit 1c6c69525b40eb76de8adf039409722015927dc3 ("genirq: Reject bogus threaded irq requests") threaded IRQs without a primary handler need to be requested with IRQF_ONESHOT, otherwise the request will fail. So pass the IRQF_ONESHOT flag in this case. The semantic patch that makes this change is available in scripts/coccinelle/misc/irqf_oneshot.cocci. Signed-off-by: Fabio Estevam Signed-off-by: Mark Brown --- diff --git a/sound/soc/codecs/twl6040.c b/sound/soc/codecs/twl6040.c index aeec27b6f1af..ca117fc9ca0d 100644 --- a/sound/soc/codecs/twl6040.c +++ b/sound/soc/codecs/twl6040.c @@ -1123,7 +1123,8 @@ static int twl6040_probe(struct snd_soc_codec *codec) mutex_init(&priv->mutex); ret = request_threaded_irq(priv->plug_irq, NULL, - twl6040_audio_handler, IRQF_NO_SUSPEND, + twl6040_audio_handler, + IRQF_NO_SUSPEND | IRQF_ONESHOT, "twl6040_irq_plug", codec); if (ret) { dev_err(codec->dev, "PLUG IRQ request failed: %d\n", ret);