ASoC: wcd9xxx: Fix codec regulator override
Fix regulator override functionality to remove mute check for overriding to class AB from class H. Add check to vneg_ctl function to execute only for Tasha. CRs-fixed: 1099810 Change-Id: I082027fc6347ae98b6fd3fe0d5aadac805fb0b84 Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
This commit is contained in:
parent
3c45c2a8a2
commit
50ff05affc
2 changed files with 7 additions and 6 deletions
|
@ -1880,12 +1880,8 @@ static void tavil_codec_override(struct snd_soc_codec *codec, int mode,
|
||||||
if (mode == CLS_AB || mode == CLS_AB_HIFI) {
|
if (mode == CLS_AB || mode == CLS_AB_HIFI) {
|
||||||
switch (event) {
|
switch (event) {
|
||||||
case SND_SOC_DAPM_POST_PMU:
|
case SND_SOC_DAPM_POST_PMU:
|
||||||
if (!(snd_soc_read(codec,
|
snd_soc_update_bits(codec,
|
||||||
WCD934X_CDC_RX2_RX_PATH_CTL) & 0x10) &&
|
WCD9XXX_A_ANA_RX_SUPPLIES, 0x02, 0x02);
|
||||||
(!(snd_soc_read(codec,
|
|
||||||
WCD934X_CDC_RX1_RX_PATH_CTL) & 0x10)))
|
|
||||||
snd_soc_update_bits(codec,
|
|
||||||
WCD9XXX_A_ANA_RX_SUPPLIES, 0x02, 0x02);
|
|
||||||
break;
|
break;
|
||||||
case SND_SOC_DAPM_POST_PMD:
|
case SND_SOC_DAPM_POST_PMD:
|
||||||
snd_soc_update_bits(codec,
|
snd_soc_update_bits(codec,
|
||||||
|
|
|
@ -579,6 +579,11 @@ static void wcd_clsh_set_hph_mode(struct snd_soc_codec *codec,
|
||||||
static void wcd_clsh_set_flyback_vneg_ctl(struct snd_soc_codec *codec,
|
static void wcd_clsh_set_flyback_vneg_ctl(struct snd_soc_codec *codec,
|
||||||
bool enable)
|
bool enable)
|
||||||
{
|
{
|
||||||
|
struct wcd9xxx *wcd9xxx = dev_get_drvdata(codec->dev->parent);
|
||||||
|
|
||||||
|
if (!TASHA_IS_2_0(wcd9xxx))
|
||||||
|
return;
|
||||||
|
|
||||||
if (enable) {
|
if (enable) {
|
||||||
snd_soc_update_bits(codec, WCD9XXX_FLYBACK_VNEG_CTRL_1, 0xE0,
|
snd_soc_update_bits(codec, WCD9XXX_FLYBACK_VNEG_CTRL_1, 0xE0,
|
||||||
0x00);
|
0x00);
|
||||||
|
|
Loading…
Add table
Reference in a new issue