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

Commit e1728c5c authored by Vatsal Bucha's avatar Vatsal Bucha Committed by Meng Wang
Browse files

ASoC: wcd-mbhc: Disable moisture_en when duty cycle is enabled



Moisture Detection should be disabled at init if duty cycle is enabled.

Change-Id: If398928a680174d981b9baefe02d9efd4e21766e
Signed-off-by: default avatarVatsal Bucha <vbucha@codeaurora.org>
parent 5bb68143
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0-only
/* Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
/* Copyright (c) 2015-2019, The Linux Foundation. All rights reserved.
 */
#include <linux/module.h>
#include <linux/init.h>
@@ -850,7 +850,7 @@ static bool wcd_mbhc_moisture_detect(struct wcd_mbhc *mbhc, bool detection_type)
{
	bool ret = false;

	if (!mbhc->mbhc_cfg->moisture_en ||
	if (!mbhc->mbhc_cfg->moisture_en &&
	    !mbhc->mbhc_cfg->moisture_duty_cycle_en)
		return ret;

@@ -1342,9 +1342,15 @@ static int wcd_mbhc_initialise(struct wcd_mbhc *mbhc)
	else
		WCD_MBHC_REG_UPDATE_BITS(WCD_MBHC_HS_L_DET_PULL_UP_CTRL, 3);

	/* Configure for moisture detection when duty cycle is not enabled.
	 * Otherwise disable moisture detection.
	 */
	if (mbhc->mbhc_cfg->moisture_en && mbhc->mbhc_cb->mbhc_moisture_config
		&& !mbhc->mbhc_cfg->moisture_duty_cycle_en)
		mbhc->mbhc_cb->mbhc_moisture_config(mbhc);
	else if (mbhc->mbhc_cfg->moisture_duty_cycle_en &&
		 mbhc->mbhc_cb->mbhc_moisture_detect_en)
		mbhc->mbhc_cb->mbhc_moisture_detect_en(mbhc, false);

	/*
	 * For USB analog we need to override the switch configuration.