|
@@ -4082,17 +4082,23 @@ static int wm8994_codec_probe(struct snd_soc_codec *codec)
|
|
|
|
|
|
switch (control->type) {
|
|
|
case WM8994:
|
|
|
- if (wm8994->micdet_irq) {
|
|
|
+ if (wm8994->micdet_irq)
|
|
|
ret = request_threaded_irq(wm8994->micdet_irq, NULL,
|
|
|
wm8994_mic_irq,
|
|
|
IRQF_TRIGGER_RISING,
|
|
|
"Mic1 detect",
|
|
|
wm8994);
|
|
|
- if (ret != 0)
|
|
|
- dev_warn(codec->dev,
|
|
|
- "Failed to request Mic1 detect IRQ: %d\n",
|
|
|
- ret);
|
|
|
- }
|
|
|
+ else
|
|
|
+ ret = wm8994_request_irq(wm8994->wm8994,
|
|
|
+ WM8994_IRQ_MIC1_DET,
|
|
|
+ wm8994_mic_irq, "Mic 1 detect",
|
|
|
+ wm8994);
|
|
|
+
|
|
|
+ if (ret != 0)
|
|
|
+ dev_warn(codec->dev,
|
|
|
+ "Failed to request Mic1 detect IRQ: %d\n",
|
|
|
+ ret);
|
|
|
+
|
|
|
|
|
|
ret = wm8994_request_irq(wm8994->wm8994,
|
|
|
WM8994_IRQ_MIC1_SHRT,
|