diff options
author | Martin Povišer <povik+lin@cutebit.org> | 2022-08-08 16:12:46 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2022-08-08 21:44:42 +0200 |
commit | 1e5907bcb3a3b569be0a03ebe668bba2ed320a50 (patch) | |
tree | 0dc0dc81791b19d6f2495c08f75962ede757d206 /sound/soc/codecs/tas2770.h | |
parent | ASoC: tas2770: Drop conflicting set_bias_level power setting (diff) | |
download | linux-1e5907bcb3a3b569be0a03ebe668bba2ed320a50.tar.xz linux-1e5907bcb3a3b569be0a03ebe668bba2ed320a50.zip |
ASoC: tas2770: Fix handling of mute/unmute
Because the PWR_CTRL field is modeled as the power state of the DAC
widget, and at the same time it is used to implement mute/unmute, we
need some additional book-keeping to have the right end result no matter
the sequence of calls. Without this fix, one can mute an ongoing stream
by toggling a speaker pin control.
Fixes: 1a476abc723e ("tas2770: add tas2770 smart PA kernel driver")
Signed-off-by: Martin Povišer <povik+lin@cutebit.org>
Link: https://lore.kernel.org/r/20220808141246.5749-5-povik+lin@cutebit.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/codecs/tas2770.h')
-rw-r--r-- | sound/soc/codecs/tas2770.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/soc/codecs/tas2770.h b/sound/soc/codecs/tas2770.h index d51e88d8c338..f75f40781ab1 100644 --- a/sound/soc/codecs/tas2770.h +++ b/sound/soc/codecs/tas2770.h @@ -138,6 +138,8 @@ struct tas2770_priv { struct device *dev; int v_sense_slot; int i_sense_slot; + bool dac_powered; + bool unmuted; }; #endif /* __TAS2770__ */ |