Loading asoc/codecs/wcd-mbhc-adc.c +10 −2 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ #include <sound/jack.h> #include "wcd-mbhc-adc.h" #include "wcd-mbhc-v2.h" #include "pdata.h" #define WCD_MBHC_ADC_HS_THRESHOLD_MV 1700 #define WCD_MBHC_ADC_HPH_THRESHOLD_MV 75 Loading Loading @@ -355,6 +356,8 @@ static bool wcd_mbhc_adc_check_for_spl_headset(struct wcd_mbhc *mbhc, bool spl_hs = false; int output_mv = 0; int adc_threshold = 0, adc_hph_threshold = 0; struct snd_soc_codec *codec = mbhc->codec; struct wcd9xxx_pdata *pdata = dev_get_platdata(codec->dev->parent); pr_debug("%s: enter\n", __func__); if (!mbhc->mbhc_cb->mbhc_micb_ctrl_thr_mic) Loading @@ -370,7 +373,9 @@ static bool wcd_mbhc_adc_check_for_spl_headset(struct wcd_mbhc *mbhc, * btn press/relesae for HEADSET type during correct work. */ output_mv = wcd_measure_adc_once(mbhc, MUX_CTL_IN2P); if (mbhc->hs_thr) if (mbhc->hs_thr && (pdata->micbias.micb2_mv != WCD_MBHC_ADC_MICBIAS_MV)) adc_threshold = mbhc->hs_thr; else adc_threshold = ((WCD_MBHC_ADC_HS_THRESHOLD_MV * Loading Loading @@ -414,6 +419,8 @@ static bool wcd_is_special_headset(struct wcd_mbhc *mbhc) bool is_spl_hs = false; int output_mv = 0; int adc_threshold = 0; struct snd_soc_codec *codec = mbhc->codec; struct wcd9xxx_pdata *pdata = dev_get_platdata(codec->dev->parent); /* * Increase micbias to 2.7V to detect headsets with Loading @@ -433,7 +440,8 @@ static bool wcd_is_special_headset(struct wcd_mbhc *mbhc) return false; } } if (mbhc->hs_thr) if (mbhc->hs_thr && (pdata->micbias.micb2_mv != WCD_MBHC_ADC_MICBIAS_MV)) adc_threshold = mbhc->hs_thr; else adc_threshold = ((WCD_MBHC_ADC_HS_THRESHOLD_MV * Loading Loading
asoc/codecs/wcd-mbhc-adc.c +10 −2 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ #include <sound/jack.h> #include "wcd-mbhc-adc.h" #include "wcd-mbhc-v2.h" #include "pdata.h" #define WCD_MBHC_ADC_HS_THRESHOLD_MV 1700 #define WCD_MBHC_ADC_HPH_THRESHOLD_MV 75 Loading Loading @@ -355,6 +356,8 @@ static bool wcd_mbhc_adc_check_for_spl_headset(struct wcd_mbhc *mbhc, bool spl_hs = false; int output_mv = 0; int adc_threshold = 0, adc_hph_threshold = 0; struct snd_soc_codec *codec = mbhc->codec; struct wcd9xxx_pdata *pdata = dev_get_platdata(codec->dev->parent); pr_debug("%s: enter\n", __func__); if (!mbhc->mbhc_cb->mbhc_micb_ctrl_thr_mic) Loading @@ -370,7 +373,9 @@ static bool wcd_mbhc_adc_check_for_spl_headset(struct wcd_mbhc *mbhc, * btn press/relesae for HEADSET type during correct work. */ output_mv = wcd_measure_adc_once(mbhc, MUX_CTL_IN2P); if (mbhc->hs_thr) if (mbhc->hs_thr && (pdata->micbias.micb2_mv != WCD_MBHC_ADC_MICBIAS_MV)) adc_threshold = mbhc->hs_thr; else adc_threshold = ((WCD_MBHC_ADC_HS_THRESHOLD_MV * Loading Loading @@ -414,6 +419,8 @@ static bool wcd_is_special_headset(struct wcd_mbhc *mbhc) bool is_spl_hs = false; int output_mv = 0; int adc_threshold = 0; struct snd_soc_codec *codec = mbhc->codec; struct wcd9xxx_pdata *pdata = dev_get_platdata(codec->dev->parent); /* * Increase micbias to 2.7V to detect headsets with Loading @@ -433,7 +440,8 @@ static bool wcd_is_special_headset(struct wcd_mbhc *mbhc) return false; } } if (mbhc->hs_thr) if (mbhc->hs_thr && (pdata->micbias.micb2_mv != WCD_MBHC_ADC_MICBIAS_MV)) adc_threshold = mbhc->hs_thr; else adc_threshold = ((WCD_MBHC_ADC_HS_THRESHOLD_MV * Loading