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

Commit 7b74ec4b authored by Phani Kumar Uppalapati's avatar Phani Kumar Uppalapati Committed by Gerrit - the friendly Code Review server
Browse files

ASoC: wcd9335: Update decimator filter cutoff frequency



Update decimator high pass filter cutoff frequency if the
TX is path closed within 300ms after opening the session.
This will restore the cutoff frequency to the default
correct value.

CRs-fixed: 988075
Change-Id: Iece28fe2551a74ec7b1b8b4b5cac02537e3d28d8
Signed-off-by: default avatarPhani Kumar Uppalapati <phaniu@codeaurora.org>
parent 64ac3318
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -5404,9 +5404,20 @@ static int tasha_codec_enable_dec(struct snd_soc_dapm_widget *w,
			      snd_soc_read(codec, tx_gain_ctl_reg));
		break;
	case SND_SOC_DAPM_PRE_PMD:
		hpf_cut_off_freq =
			tasha->tx_hpf_work[decimator].hpf_cut_off_freq;
		snd_soc_update_bits(codec, tx_vol_ctl_reg, 0x10, 0x10);
		snd_soc_update_bits(codec, dec_cfg_reg, 0x08, 0x00);
		cancel_delayed_work_sync(&tasha->tx_hpf_work[decimator].dwork);
		if (cancel_delayed_work_sync(
		    &tasha->tx_hpf_work[decimator].dwork)) {
			if (hpf_cut_off_freq != CF_MIN_3DB_150HZ) {
				tasha_codec_vote_max_bw(codec, true);
				snd_soc_update_bits(codec, dec_cfg_reg,
						    TX_HPF_CUT_OFF_FREQ_MASK,
						    hpf_cut_off_freq << 5);
				tasha_codec_vote_max_bw(codec, false);
			}
		}
		cancel_delayed_work_sync(
				&tasha->tx_mute_dwork[decimator].dwork);
		break;