ASoC: rk3308_codec: increase de-pop loop delay

There is a bit of headphone pop during power on, we
need to increase delay time (200us per loop step).

It looks fine that it may take 200us*128=25.6ms here.

Change-Id: Idbc5b235fd55c26cd71f4693cce98fccce60368f
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
This commit is contained in:
Xing Zheng
2018-07-24 16:47:07 +08:00
committed by Tao Huang
parent 9cbb7a269a
commit 3bbf75c4ed

View File

@@ -1651,13 +1651,13 @@ static int rk3308_codec_power_on(struct rk3308_codec_priv *rk3308)
/*
* 6. Change the register ACODEC_ADC_ANA_CON10[6:0] from the 0x1 to
* 0x7f step by step or configure the ACODEC_ADC_ANA_CON10[6:0] to
* 0x7f directly. The suggestion slot time of the step is 20ms.
* 0x7f directly. Here the slot time of the step is 200us.
*/
for (v = 0x1; v <= 0x7f; v++) {
regmap_update_bits(rk3308->regmap, RK3308_ADC_ANA_CON10(0),
RK3308_ADC_CURRENT_CHARGE_MSK,
v);
udelay(50);
udelay(200);
}
/* 7. Wait until the voltage of VCM keeps stable at the AVDD/2 */
@@ -1697,13 +1697,13 @@ static int rk3308_codec_power_off(struct rk3308_codec_priv *rk3308)
/*
* 4.Change the register ACODEC_ADC_ANA_CON10[6:0] from the 0x1 to 0x7f
* step by step or configure the ACODEC_ADC_ANA_CON10[6:0] to 0x7f
* directly. The suggestion slot time of the step is 20ms
* directly. Here the slot time of the step is 200us.
*/
for (v = 0x1; v <= 0x7f; v++) {
regmap_update_bits(rk3308->regmap, RK3308_ADC_ANA_CON10(0),
RK3308_ADC_CURRENT_CHARGE_MSK,
v);
udelay(50);
udelay(200);
}
/* 5. Wait until the voltage of VCM keeps stable at the AGND */