alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: Lars-Peter Clausen <lars@metafoo.de>
To: noman pouigt <variksla@gmail.com>
Cc: alsa-devel@alsa-project.org
Subject: Re: Commit:ce6cfaf1 query for shared control
Date: Mon, 25 Nov 2013 08:45:46 +0100	[thread overview]
Message-ID: <5293002A.9040505@metafoo.de> (raw)
In-Reply-To: <CAES_P+-+CmRw5YYWeDPLd8-tn8tVCHmvJgWu9SS=TdeTnWzNUA@mail.gmail.com>

On 11/25/2013 08:12 AM, noman pouigt wrote:
> Hello Lars,
> 
> I was wondering if you can enlighten me
> on below query.
> 
> Commit:ce6cfaf1
> 
> From the commit text "The input and
> output paths for each widgets are only
> updated though during the respective run
> for that widget".
> 
> Does this commit text mean: when mux
> or mixer_power_update is called then only
> the widget is powered and it's peer- widget
> source(path source) and widget sink(path sink)?

Hi,

What the commit does is to make sure that if a control is shared between
multiple mixers/muxes to apply all the changes in the same update sequence.
Instead of, as it was done before, to run a update sequence for each mixer/mux.

> 
>               +------+
>      A1 ------|      |
>               | MUX1 |----- C1
>      B1 ------|      |
>               +------+
>                  |
>       control ---+
>                  |
>               +------+
>      A2 ------|      |
>               | MUX2 |----- C2
>      B2 ------|      |
>               +------+
> 
> Can I represent the above diagram as below:
> 
> char *input_text_1[] = {
>         "A1", "B1"
> };
> 
> struct soc_enum input_enum_1 =
>  SOC_ENUM_SINGLE(some_register, some_bit,
>                     2, input_text_1);
> 
> char *input_text_2[] = {
>         "A2", "B2"
> };
> struct soc_enum input_enum_2 =
>  SOC_ENUM_SINGLE(some_register, some_bit,
>                   2, input_text_2);
> 
> 
> struct snd_kcontrol_new input_mux =
>    SOC_DAPM_ENUM("C1", input_enum_1);
> struct snd_kcontrol_new input_mux =
>    SOC_DAPM_ENUM("C2", input_enum_2);
> 
> dapm_route[] {
> "A1", "control","C1"
> "B1", "control","C1"
> "A2", "control","C2"
> "B2", "control","C2"
> };

The control part needs to have the name of one of the enum items. So this
would be { "A1", "A1", "C1" } and so on.

- Lars

       reply	other threads:[~2013-11-25  7:45 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAES_P+-+CmRw5YYWeDPLd8-tn8tVCHmvJgWu9SS=TdeTnWzNUA@mail.gmail.com>
2013-11-25  7:45 ` Lars-Peter Clausen [this message]
     [not found]   ` <CAES_P+8p3-RdGRj70XjghKZP2NGUbd_+08LPgMU=xM5aca_6ig@mail.gmail.com>
2013-11-27  7:41     ` Commit:ce6cfaf1 query for shared control Lars-Peter Clausen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5293002A.9040505@metafoo.de \
    --to=lars@metafoo.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=variksla@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).