From: Mark Brown Date: Mon, 12 Dec 2016 15:53:11 +0000 (+0000) Subject: Merge remote-tracking branches 'asoc/topic/rl6231', 'asoc/topic/rl6347a', 'asoc/topic... X-Git-Tag: v4.10-rc1~121^2~3^2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2f69b4b2c8c61b687512d3098e570d7f26b0705f;p=thirdparty%2Flinux.git Merge remote-tracking branches 'asoc/topic/rl6231', 'asoc/topic/rl6347a', 'asoc/topic/rockchip', 'asoc/topic/rt286' and 'asoc/topic/rt298' into asoc-next --- 2f69b4b2c8c61b687512d3098e570d7f26b0705f diff --cc sound/soc/codecs/rt298.c index 2db8179047ae8,55558643166fd,55558643166fd,55558643166fd,55558643166fd,6c4ac5b04665c..7150a407ffd9d --- a/sound/soc/codecs/rt298.c +++ b/sound/soc/codecs/rt298.c @@@@@@@ -326,11 -321,11 -321,11 -321,11 -321,11 -321,31 +326,31 @@@@@@@ static void rt298_jack_detect_work(stru int rt298_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack) { struct rt298_priv *rt298 = snd_soc_codec_get_drvdata(codec); +++++ struct snd_soc_dapm_context *dapm; +++++ bool hp = false; +++++ bool mic = false; +++++ int status = 0; +++++ +++++ /* If jack in NULL, disable HS jack */ +++++ if (!jack) { +++++ regmap_update_bits(rt298->regmap, RT298_IRQ_CTRL, 0x2, 0x0); +++++ dapm = snd_soc_codec_get_dapm(codec); +++++ snd_soc_dapm_disable_pin(dapm, "LDO1"); +++++ snd_soc_dapm_sync(dapm); +++++ return 0; +++++ } rt298->jack = jack; +++++ regmap_update_bits(rt298->regmap, RT298_IRQ_CTRL, 0x2, 0x2); ++++ - /* Send an initial empty report */ - snd_soc_jack_report(rt298->jack, 0, +++++ rt298_jack_detect(rt298, &hp, &mic); +++++ if (hp == true) +++++ status |= SND_JACK_HEADPHONE; + ---- /* Send an initial empty report */ ---- snd_soc_jack_report(rt298->jack, 0, +++++ if (mic == true) +++++ status |= SND_JACK_MICROPHONE; +++++ +++++ snd_soc_jack_report(rt298->jack, status, SND_JACK_MICROPHONE | SND_JACK_HEADPHONE); return 0;