diff options
author | Adam Thomson <Adam.Thomson.Opensource@diasemi.com> | 2018-08-09 10:48:50 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2018-08-09 10:50:14 +0100 |
commit | 17c81d2f5a59929c73a2a19fd49fe0b068fda76f (patch) | |
tree | 42a72072724fdff4078625498d3e7933b2448aff /sound/soc/codecs/da7219.h | |
parent | 605391d0f4bfdff2f2c6c5477ce0ccf776d8d5c0 (diff) | |
download | linux-stable-17c81d2f5a59929c73a2a19fd49fe0b068fda76f.tar.gz linux-stable-17c81d2f5a59929c73a2a19fd49fe0b068fda76f.tar.bz2 linux-stable-17c81d2f5a59929c73a2a19fd49fe0b068fda76f.zip |
ASoC: da7219: Add delays to capture path to remove DC offset noise
On some platforms it has been noted that a pop noise can be
witnessed when capturing audio, mainly for first time after a
headset jack has been inserted. This is due to a DC offset in the
Mic PGA and so to avoid this delays are required when powering
up the capture path.
This commit rectifies the problem by adding delays post Mic PGA and
post Mixin PGA. The post Mic PGA delay is determined based on
Mic Bias voltage, and is only applied the first time after a
headset jack is inserted.
Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/codecs/da7219.h')
-rw-r--r-- | sound/soc/codecs/da7219.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sound/soc/codecs/da7219.h b/sound/soc/codecs/da7219.h index 1b00023e33cd..3a006862f0e7 100644 --- a/sound/soc/codecs/da7219.h +++ b/sound/soc/codecs/da7219.h @@ -781,8 +781,10 @@ #define DA7219_SYS_STAT_CHECK_DELAY 50 /* Power up/down Delays */ -#define DA7219_SETTLING_DELAY 40 -#define DA7219_MIN_GAIN_DELAY 30 +#define DA7219_SETTLING_DELAY 40 +#define DA7219_MIN_GAIN_DELAY 30 +#define DA7219_MIC_PGA_BASE_DELAY 100 +#define DA7219_MIC_PGA_OFFSET_DELAY 40 enum da7219_clk_src { DA7219_CLKSRC_MCLK = 0, @@ -828,6 +830,8 @@ struct da7219_priv { bool master; bool alc_en; + bool micbias_on_event; + unsigned int mic_pga_delay; u8 gain_ramp_ctrl; }; |