Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp4640092ybl; Wed, 22 Jan 2020 01:50:19 -0800 (PST) X-Google-Smtp-Source: APXvYqyj/0Ec4Tw5wNSh94JyiXkd1boHI4xAHcGL3BXjEr7CHDy7CFf1wcc4TeqBqMMVlCGJ7XC+ X-Received: by 2002:aca:fc47:: with SMTP id a68mr6070497oii.52.1579686619034; Wed, 22 Jan 2020 01:50:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1579686619; cv=none; d=google.com; s=arc-20160816; b=Jg/GYovBrUABUqHuJuvJfpih0ZOFJ1T9oby0xCMKrhEJmY/Fr4pazH8xyaZeoXHB1Q AubkP4SlkfBziVpGs9lMe5gWaNm5GXCvrcAR1NJebWWfSgMXd748x8QOVBIm8SZRFXkQ Ad5oNvU8BQ44pqjxY15Fz9uOwycvgyHFvQQVg/eD4TFYGIHk1dK2XuGHvhj0ijW7BWKm C1IWj5LkFrYtDiM5FpeUWzlSikVhfDSNxyjlBZOKU9706wJhH/AsDj7ish6nYxJdyKF4 LdTfjq6wcanPBBd1DIbKcIRqkBpzc+tqTjI6Yxq9qpznSKQDwC1gzH7aGEdqzH3F+ePb ug9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=Gme7WGfoSnt1jlZRnWwrlo2BZFOHLfGJUg/gxaXfwvw=; b=GN6i8wxOsuXDCKiUroNHJzYhLdXkjQv6eTKb+Fg5TTSNWKolvj30UQd55Uqq9aLQHm lDx3zXWCBHfwIUmNab9K1cZ8MgJ8XUyOBC0HX86m7tCIvGJ4G1xBLlxEtFbaemHYYHmb CJzF8PCo1XfVuTB96FkvD8d7EoWEPGHP5XsnZBzaO9JaKChhxhRFwpRvRzcFJnhIAi6W gHX1UsjiG5uqmYMN7aH+SprCNgLpzIDMKsBOFPSIVHDegkaAPcN4EIEERhTepnDdC9oS c61bFkUYerVAJ2KpZ0kRL9KjmVBleBo8Zib894+KCJvRfZuxHvdlRFy3OD8OVxkEXQOe gcjQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=a8LnSOff; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r82si19887712oia.36.2020.01.22.01.50.07; Wed, 22 Jan 2020 01:50:19 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=a8LnSOff; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733081AbgAVJsV (ORCPT + 99 others); Wed, 22 Jan 2020 04:48:21 -0500 Received: from mail.kernel.org ([198.145.29.99]:60926 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387570AbgAVJl2 (ORCPT ); Wed, 22 Jan 2020 04:41:28 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 57FBE2468A; Wed, 22 Jan 2020 09:41:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1579686087; bh=bHIOlDCc12NvQDoeLBIZyV2bubQ9X2WM6D1OFMp2MTM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=a8LnSOffNhECi6jP+GXg+PGNx+RWAWm2mO3LftkgeBCsHoILJjCdRXYyZgfijcRJ7 IAD/JwbnbOAQh3pcmJBTchDCOdSUg9/QpLx0sLAaAasGR3gYrYSvkcut9/faOJJXQc +jSedcgZdWKkn1XWyn0AKJwvPCWopQrISQGmgwzw= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Srinivas Kandagatla , Stephan Gerhold , Mark Brown Subject: [PATCH 4.19 021/103] ASoC: msm8916-wcd-analog: Fix MIC BIAS Internal1 Date: Wed, 22 Jan 2020 10:28:37 +0100 Message-Id: <20200122092806.919211534@linuxfoundation.org> X-Mailer: git-send-email 2.25.0 In-Reply-To: <20200122092803.587683021@linuxfoundation.org> References: <20200122092803.587683021@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Stephan Gerhold commit 057efcf9faea4769cf1020677d93d040db9b23f3 upstream. MIC BIAS Internal1 is broken at the moment because we always enable the internal rbias resistor to the TX2 line (connected to the headset microphone), rather than enabling the resistor connected to TX1. Move the RBIAS code to pm8916_wcd_analog_enable_micbias_int1/2() to fix this. Fixes: 585e881e5b9e ("ASoC: codecs: Add msm8916-wcd analog codec") Cc: Srinivas Kandagatla Signed-off-by: Stephan Gerhold Link: https://lore.kernel.org/r/20200111164006.43074-3-stephan@gerhold.net Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman --- sound/soc/codecs/msm8916-wcd-analog.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) --- a/sound/soc/codecs/msm8916-wcd-analog.c +++ b/sound/soc/codecs/msm8916-wcd-analog.c @@ -388,9 +388,6 @@ static int pm8916_wcd_analog_enable_micb switch (event) { case SND_SOC_DAPM_PRE_PMU: - snd_soc_component_update_bits(component, CDC_A_MICB_1_INT_RBIAS, - MICB_1_INT_TX2_INT_RBIAS_EN_MASK, - MICB_1_INT_TX2_INT_RBIAS_EN_ENABLE); snd_soc_component_update_bits(component, reg, MICB_1_EN_PULL_DOWN_EN_MASK, 0); snd_soc_component_update_bits(component, CDC_A_MICB_1_EN, MICB_1_EN_OPA_STG2_TAIL_CURR_MASK, @@ -440,6 +437,14 @@ static int pm8916_wcd_analog_enable_micb struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); struct pm8916_wcd_analog_priv *wcd = snd_soc_component_get_drvdata(component); + switch (event) { + case SND_SOC_DAPM_PRE_PMU: + snd_soc_component_update_bits(component, CDC_A_MICB_1_INT_RBIAS, + MICB_1_INT_TX1_INT_RBIAS_EN_MASK, + MICB_1_INT_TX1_INT_RBIAS_EN_ENABLE); + break; + } + return pm8916_wcd_analog_enable_micbias_int(component, event, w->reg, wcd->micbias1_cap_mode); } @@ -550,6 +555,11 @@ static int pm8916_wcd_analog_enable_micb struct pm8916_wcd_analog_priv *wcd = snd_soc_component_get_drvdata(component); switch (event) { + case SND_SOC_DAPM_PRE_PMU: + snd_soc_component_update_bits(component, CDC_A_MICB_1_INT_RBIAS, + MICB_1_INT_TX2_INT_RBIAS_EN_MASK, + MICB_1_INT_TX2_INT_RBIAS_EN_ENABLE); + break; case SND_SOC_DAPM_POST_PMU: pm8916_mbhc_configure_bias(wcd, true); break;