All of lore.kernel.org
 help / color / mirror / Atom feed
* ASoC mixer control names v.s. well-known "Master"
@ 2011-04-11 19:34 Stephen Warren
  2011-04-11 20:07 ` Mark Brown
  0 siblings, 1 reply; 2+ messages in thread
From: Stephen Warren @ 2011-04-11 19:34 UTC (permalink / raw)
  To: Mark Brown (broonie@opensource.wolfsonmicro.com)
  Cc: alsa-devel@alsa-project.org

Mark,

In ChromeOS, user-space attempts to manipulate controls with "well known
names" to control e.g. output volume. The names it uses are probably based
on Documentation/sound/alsa/ControlNames.txt, since the code was originally
written for x86 platforms that use those names.

Is that document relevant to ASoC, up-to-date, and binding on audio
drivers, or more of a de-facto FYI?

Those names don't exist for Tegra, or rather the WM8903, and I imagine for
any ASoC drivers. I had imagined this could be fixed by creating virtual
mixer controls in asound.conf that re-direct requests to that real control.
Is that how things typically work? Or, should the ASoC machine driver
create controls with those names?

Thanks.

-- 
nvpublic

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: ASoC mixer control names v.s. well-known "Master"
  2011-04-11 19:34 ASoC mixer control names v.s. well-known "Master" Stephen Warren
@ 2011-04-11 20:07 ` Mark Brown
  0 siblings, 0 replies; 2+ messages in thread
From: Mark Brown @ 2011-04-11 20:07 UTC (permalink / raw)
  To: Stephen Warren; +Cc: alsa-devel@alsa-project.org

On Mon, Apr 11, 2011 at 12:34:23PM -0700, Stephen Warren wrote:

> In ChromeOS, user-space attempts to manipulate controls with "well known
> names" to control e.g. output volume. The names it uses are probably based
> on Documentation/sound/alsa/ControlNames.txt, since the code was originally
> written for x86 platforms that use those names.

> Is that document relevant to ASoC, up-to-date, and binding on audio
> drivers, or more of a de-facto FYI?

This basically doesn't work for ASoC - it is kind of what you should do
if you can do things but it really only works for PC style sound cards
where there's relatively little flexibility in terms of routing and so
on.  With embedded systems the appropriate controls to use for a given
feature can vary substantially depending on board design and even use
case (the CPU to headphone case for MP3 playback may not share anything
at all with the voice call to earpiece) so it's difficult to do
anything.

The idea with ASoC is that you should use UCM for this.  What I'd
suggest is that ChromeOS implements UCM support and then falls back to
using control names if there isn't a UCM configuration for the device.

> Those names don't exist for Tegra, or rather the WM8903, and I imagine for
> any ASoC drivers. I had imagined this could be fixed by creating virtual
> mixer controls in asound.conf that re-direct requests to that real control.
> Is that how things typically work? Or, should the ASoC machine driver
> create controls with those names?

Typically embedded applications don't try to work with generic control
names at all - they're either specific to the physical system or use
configuration files.  A large part of what UCM does is abstract out the
generic bits of the configuration files approach from applications.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-04-11 20:07 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-11 19:34 ASoC mixer control names v.s. well-known "Master" Stephen Warren
2011-04-11 20:07 ` Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.