All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Brown <broonie@opensource.wolfsonmicro.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org,
	David Henningsson <david.henningsson@canonical.com>
Subject: Re: [PATCH] ALSA: hda/jack - Also add jack kctls for Conexant codecs
Date: Thu, 22 Dec 2011 14:12:51 +0000	[thread overview]
Message-ID: <20111222141251.GV4546@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <s5h4nwsd82a.wl%tiwai@suse.de>

On Thu, Dec 22, 2011 at 02:55:57PM +0100, Takashi Iwai wrote:
> Mark Brown wrote:

> > A pure addition can still cause problems as we roll out the same
> > interface into other drivers, for example if there's assumptions that
> > aren't generally true.

> In later future, yes.  But I was talking about 3.3 kernel.

Once we've got a userspace interface we're pretty much stuck with it...

> > I'm guessing that as this is just a simple boolean each jack will have a
> > series of controls like "Headset Jack Headphone" and "Headset Jack
> > Microphone" or whatever and userspace should match them all together in
> > the same way that it does for Volume and Switch controls?

> My current assumption is so, too.  OTOH, if a single jack must provide
> several values inevitably, it may take an integer or an enum, in
> theory.  But I think (and hope) this wouldn't happen.

Supporting multiple objects on a single jack is a very basic requirement
in order to support headsets (which exist on PCs as well, the MacBooks
for example) - we can usually distinguish between at least headset and
headphone.  I think if we're going to do this via a single multi-state
control rather than a series of booleans it'd need to be an enum for
usability ("an object of type 2!"), Android uses integers and it's
pretty miserable for usability.

> >  That sounds
> > like it'll work well, we just need to define some strings for standard
> > jacks and conections.

> Yeah.  Unfortunately this standardization isn't always trivial,
> especially when multiple jacks are present with the same type...

I was thinking more about the things you might detect rather than the
jacks, that's a much more tractable problem.

> My idea is to give some association between this jack kctl and another
> kctl, in a simple way like TLV.  But it's likely a new year's dream.

Associating the jacks with the audio routes is definitely a separate
problem.

  reply	other threads:[~2011-12-22 14:12 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-20 14:23 [PATCH] ALSA: hda/jack - Also add jack kctls for Conexant codecs David Henningsson
2011-12-20 14:32 ` Takashi Iwai
2011-12-20 14:44   ` Takashi Iwai
2011-12-20 23:58   ` Mark Brown
2011-12-21 14:42     ` Takashi Iwai
2011-12-22  1:08       ` Mark Brown
2011-12-22 12:21       ` Mark Brown
2011-12-22 13:55         ` Takashi Iwai
2011-12-22 14:12           ` Mark Brown [this message]
2011-12-22 14:19             ` Takashi Iwai
2011-12-22 14:29               ` Mark Brown

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=20111222141251.GV4546@opensource.wolfsonmicro.com \
    --to=broonie@opensource.wolfsonmicro.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=david.henningsson@canonical.com \
    --cc=tiwai@suse.de \
    /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 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.