[PATCH 1/3] ASoC: dapm: connect virtual mux with default value
Lars-Peter Clausen
lars at metafoo.de
Tue Mar 31 07:55:55 CEST 2020
On 3/31/20 7:42 AM, 이경택 wrote:
> Since a virtual mixer has no backing registers to decide which path to
> connect, it will try to match with initial value 0.
> This is to ensure that the default mixer choice will be correctly powered
> up during initialization.
>
> Signed-off-by: Gyeongtaek Lee <gt82.lee at samsung.com>
> ---
> sound/soc/soc-dapm.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c index
> 9fb54e6fe254..fc55a0534252 100644
> --- a/sound/soc/soc-dapm.c
> +++ b/sound/soc/soc-dapm.c
> @@ -802,7 +802,16 @@ static void dapm_set_mixer_path_status(struct
> snd_soc_dapm_path *p, int i,
> val = max - val;
> p->connect = !!val;
> } else {
> - p->connect = 0;
> + /* since a virtual mixer has no backing registers to
> + * decide which path to connect, it will try to match
> + * with initial value 0. This is to ensure
> + * that the default mixer choice will be
> + * correctly powered up during initialization.
> + */
> + val = 0;
> + if (invert)
> + val = max - val;
> + p->connect = !!val;
Do you have virtual mixers that have the inverted flag set and if yes
why? Cause otherwise this is exactly the same as before.
More information about the Alsa-devel
mailing list