On Tue, 2019-05-21 at 13:36 +0300, Oleksandr Suvorov wrote:
> To enable "zero cross detect" for ADC/HP, change
> HP_ZCD_EN/ADC_ZCD_EN bits only instead of writing the whole
> CHIP_ANA_CTRL register.
> 
> Signed-off-by: Oleksandr Suvorov <oleksandr.suvo...@toradex.com>

Reviewed-by: Marcel Ziswiler <marcel.ziswi...@toradex.com>

> ---
> 
>  sound/soc/codecs/sgtl5000.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git sound/soc/codecs/sgtl5000.c sound/soc/codecs/sgtl5000.c
> index bb58c997c691..e813a37910af 100644
> --- sound/soc/codecs/sgtl5000.c
> +++ sound/soc/codecs/sgtl5000.c
> @@ -1289,6 +1289,7 @@ static int sgtl5000_probe(struct
> snd_soc_component *component)
>       int ret;
>       u16 reg;
>       struct sgtl5000_priv *sgtl5000 =
> snd_soc_component_get_drvdata(component);
> +     unsigned int zcd_mask = SGTL5000_HP_ZCD_EN |
> SGTL5000_ADC_ZCD_EN;
>  
>       /* power up sgtl5000 */
>       ret = sgtl5000_set_power_regs(component);
> @@ -1316,9 +1317,8 @@ static int sgtl5000_probe(struct
> snd_soc_component *component)
>              0x1f);
>       snd_soc_component_write(component, SGTL5000_CHIP_PAD_STRENGTH,
> reg);
>  
> -     snd_soc_component_write(component, SGTL5000_CHIP_ANA_CTRL,
> -                     SGTL5000_HP_ZCD_EN |
> -                     SGTL5000_ADC_ZCD_EN);
> +     snd_soc_component_update_bits(component,
> SGTL5000_CHIP_ANA_CTRL,
> +             zcd_mask, zcd_mask);
>  
>       snd_soc_component_update_bits(component,
> SGTL5000_CHIP_MIC_CTRL,
>                       SGTL5000_BIAS_R_MASK,
> -- 
> 2.20.1

Reply via email to