summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorkumar km <kumar.km@stericsson.com>2011-11-16 18:02:22 +0530
committerPhilippe Langlais <philippe.langlais@linaro.org>2012-03-19 09:01:02 +0100
commit8d783cd5dd4313df7ca8d111679d0fd46733c324 (patch)
tree0f599a14bdcc1925cec04e59260d59690f920588 /sound
parentc6f27d1ac0e38666b94fdb614c7dcf96e50add79 (diff)
ASoC: Ux500: Proper power on sequence for playback
This patch corrects the power on sequence for playback case with proper envelop threshold value and speaker related controls moved to alsa control. ST-Ericsson Linux next: NA ST-Ericsson ID: WP363424 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: If52dce80a84e86d1cc384b3b020ca2267aa5e76a Signed-off-by: Kumar KM <kumar.km@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/38028 Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/ab5500.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/sound/soc/codecs/ab5500.c b/sound/soc/codecs/ab5500.c
index cef5ce159c5..d1ed4895321 100644
--- a/sound/soc/codecs/ab5500.c
+++ b/sound/soc/codecs/ab5500.c
@@ -1104,18 +1104,14 @@ static void power_for_playback(enum enum_power onoff, int ifsel)
return;
}
mask_set_reg(ENV_THR, ENV_THR_HIGH_MASK, 0x0F << ENV_THR_HIGH_SHIFT);
- mask_set_reg(ENV_THR, ENV_THR_LOW_MASK, 0x0F << ENV_THR_LOW_SHIFT);
+ mask_set_reg(ENV_THR, ENV_THR_LOW_MASK, 0x00 << ENV_THR_LOW_SHIFT);
+ mask_set_reg(DC_CANCEL, DC_CANCEL_AUXO12_MASK,
+ 0x01 << DC_CANCEL_AUXO12_SHIFT);
power_widget_unlocked(onoff, ifsel == 0 ?
widget_if0_dld_l : widget_if1_dld_l);
power_widget_unlocked(onoff, ifsel == 0 ?
- widget_if0_dld_r : widget_if1_dld_r);
-
- mask_set_reg(SPKR1, SPKRx_PWR_MASK, 0x03 << SPKRx_PWR_SHIFT);
- mask_set_reg(SPKR1, SPKRx_GAIN_MASK, 0x12 << SPKRx_GAIN_SHIFT);
- mask_set_reg(RX3_DPGA, RXx_DPGA_MASK, 0x3F << RXx_DPGA_SHIFT);
- mask_set_reg(DC_CANCEL, DC_CANCEL_AUXO12_MASK,
- 0x01 << DC_CANCEL_AUXO12_SHIFT);
+ widget_if0_dld_r : widget_if1_dld_r);
mutex_unlock(&ab5500_pm_mutex);
}