From: Laxminath Kasam Date: Fri, 10 Mar 2017 12:46:57 +0000 (+0530) Subject: ASoC: sdm660_cdc: Fix no headset remove event after SSR X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=1650f182b686187e500075fbf970b7494515a7e9;p=sagit-ice-cold%2Fkernel_xiaomi_msm8998.git ASoC: sdm660_cdc: Fix no headset remove event after SSR Restart mechanical detection as part of SSR device_up functionality to receive headset events after SSR. CRs-Fixed: 2015351 Change-Id: I359c701b8c7c086c087ab5fa7714b6bd3f7c4708 Signed-off-by: Laxminath Kasam --- diff --git a/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c b/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c index 04440262fe7a..c647549be07d 100644 --- a/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c +++ b/sound/soc/codecs/sdm660_cdc/msm-analog-cdc.c @@ -3797,6 +3797,9 @@ static int msm_anlg_cdc_device_up(struct snd_soc_codec *codec) msm_anlg_cdc_configure_cap(codec, false, false); wcd_mbhc_stop(&sdm660_cdc_priv->mbhc); wcd_mbhc_deinit(&sdm660_cdc_priv->mbhc); + /* Disable mechanical detection and set type to insertion */ + snd_soc_update_bits(codec, MSM89XX_PMIC_ANALOG_MBHC_DET_CTL_1, + 0xA0, 0x20); ret = wcd_mbhc_init(&sdm660_cdc_priv->mbhc, codec, &mbhc_cb, &intr_ids, wcd_mbhc_registers, true); if (ret)