From: Mark Brown Date: Mon, 17 Jun 2013 16:20:32 +0000 (+0100) Subject: Merge remote-tracking branch 'asoc/topic/wm8994' into asoc-next X-Git-Tag: firefly_0821_release~176^2~5489^2~16^2~1^2~4 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=5464389755b78e235c999c2dcf58718d23326d46;p=firefly-linux-kernel-4.4.55.git Merge remote-tracking branch 'asoc/topic/wm8994' into asoc-next --- 5464389755b78e235c999c2dcf58718d23326d46 diff --cc sound/soc/codecs/wm8994.c index 29e95f93d482,0f58f003dc1a..25580b5a853f --- a/sound/soc/codecs/wm8994.c +++ b/sound/soc/codecs/wm8994.c @@@ -3836,18 -3925,16 +3930,22 @@@ static irqreturn_t wm8958_mic_irq(int i ret); } else if (!(ret & WM1811_JACKDET_LVL)) { dev_dbg(codec->dev, "Ignoring removed jack\n"); - return IRQ_HANDLED; + goto out; } + } else if (!(reg & WM8958_MICD_STS)) { + snd_soc_jack_report(wm8994->micdet[0].jack, 0, + SND_JACK_MECHANICAL | SND_JACK_HEADSET | + wm8994->btn_mask); + wm8994->mic_detecting = true; + goto out; } + wm8994->mic_status = reg; + id_delay = wm8994->wm8994->pdata.mic_id_delay; + if (wm8994->mic_detecting) - wm8994->mic_id_cb(wm8994->mic_id_cb_data, reg); + schedule_delayed_work(&wm8994->mic_complete_work, + msecs_to_jiffies(id_delay)); else wm8958_button_det(codec, reg);