[alsa-devel] [PATCH - alsa-lib 1/1] conf/cards: add support for pistachio-card.

Takashi Iwai tiwai at suse.de
Mon Nov 28 15:05:16 CET 2016


On Mon, 28 Nov 2016 10:33:11 +0100,
<manohar.narkhede at imgtec.com> wrote:
> 
> From: Manohar Narkhede <Manohar.Narkhede at imgtec.com>
> 
> Signed-off-by: Manohar Narkhede <Manohar.Narkhede at imgtec.com>

Could you give a bit more information?
The configuration you gave isn't very straightforward, something
really special.

> diff --git a/src/conf/cards/Makefile.am b/src/conf/cards/Makefile.am
> index 008d399..60b5309 100644
> --- a/src/conf/cards/Makefile.am
> +++ b/src/conf/cards/Makefile.am
> @@ -39,6 +39,7 @@ cfg_files = aliases.conf \
>  	Maestro3.conf \
>  	NFORCE.conf \
>  	PC-Speaker.conf \
> +	pistachio-card.conf \
>  	PMac.conf \
>  	PMacToonie.conf \
>  	PS3.conf \
> diff --git a/src/conf/cards/aliases.conf b/src/conf/cards/aliases.conf
> index 4a92fb2..60f9d26 100644
> --- a/src/conf/cards/aliases.conf
> +++ b/src/conf/cards/aliases.conf
> @@ -55,6 +55,7 @@ AV100 cards.CMI8788
>  AV200 cards.CMI8788
>  CMI8786 cards.CMI8788
>  CMI8787 cards.CMI8788
> +pistachio cards.pistachio-card
>  
>  <confdir:pcm/default.conf>
>  <confdir:pcm/dmix.conf>
> diff --git a/src/conf/cards/pistachio-card.conf b/src/conf/cards/pistachio-card.conf
> new file mode 100644
> index 0000000..9c0318d
> --- /dev/null
> +++ b/src/conf/cards/pistachio-card.conf
> @@ -0,0 +1,34 @@
> +#
> +# Configuration for the pistachio chip
> +#
> +
> +pistachio-card.pcm.default{
> +        @args [ CARD ]
> +        @args.CARD {
> +                type string
> +                default "pistachio"
> +        }
> +        @args.DEVICE {
> +                type integer
> +                default 2
> +        }
> +
> +        type asym
> +        capture.pcm {
> +                type multi
> +                slaves.a.pcm "hw:0,4"
> +                slaves.a.channels 12
> +                bindings.0.slave a
> +                bindings.0.channel 4
> +                bindings.1.slave a
> +                bindings.1.channel 5
> +        }

So for the capture, we always ignore $DEVICE but use the fixed one,
right?

And, for the configuration, the multi plugin is superfluous.  It has
only one slave, so it can be a simple route plugin.  But...

> +
> +        playback.pcm {
> +                type hw
> +                card $CARD
> +                device $DEVICE
> +
> +        }

... this is the hw plugin.  And it means that the "default" PCM won't
work with any other configuration.  We usually wrap it with plug
plugin.

Also, most of other configuration allow the multiplexing via dmix and
dsnoop.  I don't know whether these would work for your systems, but
by defining the like above, the access will be exclusive.
If this is per design, it must be explained in the comments or in the
commit log (at best in both).


thanks,

Takashi


More information about the Alsa-devel mailing list