Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c31183b7 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "ASoC: wcd: Do not enable pulldown when headset is inserted"

parents 38303a38 2b04b625
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -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),
@@ -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 {
+4 −0
Original line number Diff line number Diff line
@@ -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);
@@ -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);
+2 −0
Original line number Diff line number Diff line
@@ -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 {
+4 −1
Original line number Diff line number Diff line
@@ -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",
@@ -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 = {