[alsa-devel] [PATCH 044/112] ALSA: hda - More generic auto-mic switching for Realtek codecs

Takashi Iwai tiwai at suse.de
Thu Jan 10 16:08:52 CET 2013

At Thu, 10 Jan 2013 08:41:13 +0800,
Raymond Yau wrote:
> >
> > This patch extends the capability of the auto-mic feature.
> > Instead of limiting the automatic input-source selection only to the
> > mics (internal, external and dock mics), allow it for generic inputs,
> > e.g. switching between the rear line-in and the front mic.
> >
> > The logic is to check the attribute and location of input pins, and
> > enable the automatic selection feature only if all such pins are in
> > different locations (e.g. internal, front, rear, etc) and line-in or
> > mic pins.  That is, if multiple input pins are assigned to a single
> > location, the feature isn't enabled because we don't know the
> > priority.
> >
> > (You may wonder why this restriction doesn't exist for the headphone
> >  automute.  The reason is that the output case is different from the
> >  input: the input source is an exclusive selection while the output
> >  can be multiplexed.)
> >
> > Note that, for avoiding regressions, the line-in auto switching
> > feature isn't activated as default.  It has to be set explicitly via
> > spec->line_in_auto_switch flag in a fixup code.
> Is this feature automatically disabled when rear Mic or line in Jack is
> retasked as output ?
> Does it mean that multi channel capture will not be implemented since it is
> conflict with both dynamic adc  switching and auto Mic selection ?

The recent jack detection codes (at least the code in
test/hda-gen-parser branch) checks the direction of the pinctl.
If a multi-io pin is configured as output, the mic autoswitch will
ignore this pin.  Vice versa for the auto-mute and headphone-as-mic


More information about the Alsa-devel mailing list