Loading sound/soc/codecs/msm8x16-wcd.c +4 −1 Original line number Diff line number Diff line Loading @@ -182,7 +182,8 @@ enum { MAX_MSM8X16_WCD_DEVICE }; static struct wcd_mbhc_register wcd_mbhc_registers[] = { static struct wcd_mbhc_register wcd_mbhc_registers[WCD_MBHC_REG_FUNC_MAX] = { WCD_MBHC_REGISTER("WCD_MBHC_L_DET_EN", MSM8X16_WCD_A_ANALOG_MBHC_DET_CTL_1, 0x80, 7, 0), Loading Loading @@ -250,6 +251,8 @@ static struct wcd_mbhc_register wcd_mbhc_registers[] = { 0x10, 4, 0), WCD_MBHC_REGISTER("WCD_MBHC_MOISTURE_VREF", 0, 0, 0, 0), WCD_MBHC_REGISTER("WCD_MBHC_PULLDOWN_CTRL", MSM8X16_WCD_A_ANALOG_MICB_2_EN, 0x20, 5, 0), }; struct msm8x16_wcd_spmi { Loading sound/soc/codecs/wcd-mbhc-v2.c +4 −0 Original line number Diff line number Diff line Loading @@ -1261,6 +1261,8 @@ static void wcd_mbhc_swch_irq_handler(struct wcd_mbhc *mbhc) * is using internal micbias*/ mbhc->mbhc_cb->micb_internal(codec, 1, true); /* Remove micbias pulldown */ WCD_MBHC_REG_UPDATE_BITS(WCD_MBHC_PULLDOWN_CTRL, 0); /* Apply trim if needed on the device */ if (mbhc->mbhc_cb->trim_btn_reg) mbhc->mbhc_cb->trim_btn_reg(codec); Loading Loading @@ -1294,6 +1296,8 @@ static void wcd_mbhc_swch_irq_handler(struct wcd_mbhc *mbhc) if (mbhc->mbhc_cb->micb_internal) mbhc->mbhc_cb->micb_internal(codec, 1, false); /* Pulldown micbias */ WCD_MBHC_REG_UPDATE_BITS(WCD_MBHC_PULLDOWN_CTRL, 1); mbhc->mbhc_cb->irq_control(codec, mbhc->intr_ids->mbhc_hs_rem_intr, false); Loading sound/soc/codecs/wcd-mbhc-v2.h +2 −0 Original line number Diff line number Diff line Loading @@ -56,6 +56,8 @@ enum wcd_mbhc_register_function { WCD_MBHC_HPH_PA_EN, WCD_MBHC_SWCH_LEVEL_REMOVE, WCD_MBHC_MOISTURE_VREF, WCD_MBHC_PULLDOWN_CTRL, WCD_MBHC_REG_FUNC_MAX, }; enum wcd_mbhc_plug_type { Loading sound/soc/codecs/wcd9335.c +4 −1 Original line number Diff line number Diff line Loading @@ -436,7 +436,8 @@ struct wcd_swr_ctrl_platform_data { int action); }; static struct wcd_mbhc_register wcd_mbhc_registers[] = { static struct wcd_mbhc_register wcd_mbhc_registers[WCD_MBHC_REG_FUNC_MAX] = { WCD_MBHC_REGISTER("WCD_MBHC_L_DET_EN", WCD9335_ANA_MBHC_MECH, 0x80, 7, 0), WCD_MBHC_REGISTER("WCD_MBHC_GND_DET_EN", Loading Loading @@ -502,6 +503,8 @@ static struct wcd_mbhc_register wcd_mbhc_registers[] = { */ WCD_MBHC_REGISTER("WCD_MBHC_MOISTURE_VREF", 0, 0, 0, 0), WCD_MBHC_REGISTER("WCD_MBHC_PULLDOWN_CTRL", 0, 0, 0, 0), }; static const struct wcd_mbhc_intr intr_ids = { Loading Loading
sound/soc/codecs/msm8x16-wcd.c +4 −1 Original line number Diff line number Diff line Loading @@ -182,7 +182,8 @@ enum { MAX_MSM8X16_WCD_DEVICE }; static struct wcd_mbhc_register wcd_mbhc_registers[] = { static struct wcd_mbhc_register wcd_mbhc_registers[WCD_MBHC_REG_FUNC_MAX] = { WCD_MBHC_REGISTER("WCD_MBHC_L_DET_EN", MSM8X16_WCD_A_ANALOG_MBHC_DET_CTL_1, 0x80, 7, 0), Loading Loading @@ -250,6 +251,8 @@ static struct wcd_mbhc_register wcd_mbhc_registers[] = { 0x10, 4, 0), WCD_MBHC_REGISTER("WCD_MBHC_MOISTURE_VREF", 0, 0, 0, 0), WCD_MBHC_REGISTER("WCD_MBHC_PULLDOWN_CTRL", MSM8X16_WCD_A_ANALOG_MICB_2_EN, 0x20, 5, 0), }; struct msm8x16_wcd_spmi { Loading
sound/soc/codecs/wcd-mbhc-v2.c +4 −0 Original line number Diff line number Diff line Loading @@ -1261,6 +1261,8 @@ static void wcd_mbhc_swch_irq_handler(struct wcd_mbhc *mbhc) * is using internal micbias*/ mbhc->mbhc_cb->micb_internal(codec, 1, true); /* Remove micbias pulldown */ WCD_MBHC_REG_UPDATE_BITS(WCD_MBHC_PULLDOWN_CTRL, 0); /* Apply trim if needed on the device */ if (mbhc->mbhc_cb->trim_btn_reg) mbhc->mbhc_cb->trim_btn_reg(codec); Loading Loading @@ -1294,6 +1296,8 @@ static void wcd_mbhc_swch_irq_handler(struct wcd_mbhc *mbhc) if (mbhc->mbhc_cb->micb_internal) mbhc->mbhc_cb->micb_internal(codec, 1, false); /* Pulldown micbias */ WCD_MBHC_REG_UPDATE_BITS(WCD_MBHC_PULLDOWN_CTRL, 1); mbhc->mbhc_cb->irq_control(codec, mbhc->intr_ids->mbhc_hs_rem_intr, false); Loading
sound/soc/codecs/wcd-mbhc-v2.h +2 −0 Original line number Diff line number Diff line Loading @@ -56,6 +56,8 @@ enum wcd_mbhc_register_function { WCD_MBHC_HPH_PA_EN, WCD_MBHC_SWCH_LEVEL_REMOVE, WCD_MBHC_MOISTURE_VREF, WCD_MBHC_PULLDOWN_CTRL, WCD_MBHC_REG_FUNC_MAX, }; enum wcd_mbhc_plug_type { Loading
sound/soc/codecs/wcd9335.c +4 −1 Original line number Diff line number Diff line Loading @@ -436,7 +436,8 @@ struct wcd_swr_ctrl_platform_data { int action); }; static struct wcd_mbhc_register wcd_mbhc_registers[] = { static struct wcd_mbhc_register wcd_mbhc_registers[WCD_MBHC_REG_FUNC_MAX] = { WCD_MBHC_REGISTER("WCD_MBHC_L_DET_EN", WCD9335_ANA_MBHC_MECH, 0x80, 7, 0), WCD_MBHC_REGISTER("WCD_MBHC_GND_DET_EN", Loading Loading @@ -502,6 +503,8 @@ static struct wcd_mbhc_register wcd_mbhc_registers[] = { */ WCD_MBHC_REGISTER("WCD_MBHC_MOISTURE_VREF", 0, 0, 0, 0), WCD_MBHC_REGISTER("WCD_MBHC_PULLDOWN_CTRL", 0, 0, 0, 0), }; static const struct wcd_mbhc_intr intr_ids = { Loading