From fdc3cccc7bdbbcda5b86601bff2d614dd65a7e79 Mon Sep 17 00:00:00 2001 From: Mark Brown Date: Sat, 20 Aug 2011 19:28:59 +0100 Subject: [PATCH] --- yaml --- r: 270531 b: refs/heads/master c: 2fde6e80dd5460a54651c74b5e5d9a22e4f82af2 h: refs/heads/master i: 270529: 5acf41b801de60c4d8200f603edf2c0e4d7a6acc 270527: e556bc56043b92ccaf9e1ba97b4be65abc32481a v: v3 --- [refs] | 2 +- trunk/sound/soc/codecs/wm8996.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 12e820f112a9..9e496247169c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 889c85c550ebdf8af69f5c08387fde3f6f48d10f +refs/heads/master: 2fde6e80dd5460a54651c74b5e5d9a22e4f82af2 diff --git a/trunk/sound/soc/codecs/wm8996.c b/trunk/sound/soc/codecs/wm8996.c index 2a0a612a4edb..acbad5be69bc 100644 --- a/trunk/sound/soc/codecs/wm8996.c +++ b/trunk/sound/soc/codecs/wm8996.c @@ -2408,6 +2408,9 @@ static irqreturn_t wm8996_irq(int irq, void *data) } irq_val &= ~snd_soc_read(codec, WM8996_INTERRUPT_STATUS_2_MASK); + if (!irq_val) + return IRQ_NONE; + snd_soc_write(codec, WM8996_INTERRUPT_STATUS_2, irq_val); if (irq_val & (WM8996_DCS_DONE_01_EINT | WM8996_DCS_DONE_23_EINT)) { @@ -2426,10 +2429,7 @@ static irqreturn_t wm8996_irq(int irq, void *data) if (irq_val & WM8996_MICD_EINT) wm8996_micd(codec); - if (irq_val) - return IRQ_HANDLED; - else - return IRQ_NONE; + return IRQ_HANDLED; } static irqreturn_t wm8996_edge_irq(int irq, void *data)