diff options
author | Takashi Iwai <tiwai@suse.de> | 2015-03-23 08:14:02 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2015-03-23 08:14:02 -0400 |
commit | 3372dbdd8ca11f51be8c6a30b2bc79eb04c4a902 (patch) | |
tree | d4499bf5a5665b4820ffaf96bce55bf6b895195e /sound/soc/codecs/rt286.c | |
parent | bc465aa9d045feb0e13b4a8f32cc33c1943f62d6 (diff) | |
parent | 967b1307b69b8ada8b331e01046ad1ef83742e99 (diff) |
Merge branch 'for-next' into topic/hda-core
Diffstat (limited to 'sound/soc/codecs/rt286.c')
-rw-r--r-- | sound/soc/codecs/rt286.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/sound/soc/codecs/rt286.c b/sound/soc/codecs/rt286.c index 9b541e52da8c..826037090c83 100644 --- a/sound/soc/codecs/rt286.c +++ b/sound/soc/codecs/rt286.c | |||
@@ -395,9 +395,20 @@ int rt286_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack) | |||
395 | 395 | ||
396 | rt286->jack = jack; | 396 | rt286->jack = jack; |
397 | 397 | ||
398 | /* Send an initial empty report */ | 398 | if (jack) { |
399 | snd_soc_jack_report(rt286->jack, 0, | 399 | /* enable IRQ */ |
400 | SND_JACK_MICROPHONE | SND_JACK_HEADPHONE); | 400 | if (rt286->jack->status | SND_JACK_HEADPHONE) |
401 | snd_soc_dapm_force_enable_pin(&codec->dapm, "LDO1"); | ||
402 | regmap_update_bits(rt286->regmap, RT286_IRQ_CTRL, 0x2, 0x2); | ||
403 | /* Send an initial empty report */ | ||
404 | snd_soc_jack_report(rt286->jack, rt286->jack->status, | ||
405 | SND_JACK_MICROPHONE | SND_JACK_HEADPHONE); | ||
406 | } else { | ||
407 | /* disable IRQ */ | ||
408 | regmap_update_bits(rt286->regmap, RT286_IRQ_CTRL, 0x2, 0x0); | ||
409 | snd_soc_dapm_disable_pin(&codec->dapm, "LDO1"); | ||
410 | } | ||
411 | snd_soc_dapm_sync(&codec->dapm); | ||
401 | 412 | ||
402 | return 0; | 413 | return 0; |
403 | } | 414 | } |