kernel-ark/sound/pci/hda
Takashi Iwai ab16c6dd79 ALSA: hda - More generic auto-mic switching for Realtek codecs
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.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2013-01-12 08:30:50 +01:00
..
hda_auto_parser.c ALSA: hda - Rearrange INPUT_PIN_ATTR_* 2013-01-12 08:30:48 +01:00
hda_auto_parser.h ALSA: hda - Rearrange INPUT_PIN_ATTR_* 2013-01-12 08:30:48 +01:00
hda_beep.c ALSA: hda - Fix 'Beep Playback Switch' with no underlying mute switch 2012-08-14 10:22:31 +02:00
hda_beep.h ALSA: hda - Get rid of superfluous beep->mode field 2012-07-03 18:31:36 +02:00
hda_codec.c ALSA: hda - Move fixup code into struct hda_codec 2013-01-12 08:30:45 +01:00
hda_codec.h ALSA: hda - Move fixup code into struct hda_codec 2013-01-12 08:30:45 +01:00
hda_eld.c ALSA: hda - hide HDMI/ELD printks unless snd.debug=2 2012-04-10 14:53:55 +02:00
hda_generic.c ALSA: hda - Clean up CONFIG_SND_HDA_POWER_SAVE 2012-08-30 07:50:13 -07:00
hda_hwdep.c ALSA: Remove the rest of __devinit* in comments 2012-12-07 07:41:56 +01:00
hda_intel_trace.h ALSA: hda - Add tracepoints to HD-audio controller driver 2012-10-30 10:39:59 +01:00
hda_intel.c ALSA: hda - Disable runtime D3 for Intel CPT & co 2013-01-09 11:00:08 +01:00
hda_jack.c ALSA: hda - Call snd_array_init() early and only once 2012-11-28 09:03:39 +01:00
hda_jack.h ALSA: hda - Allow jack state to depend on another jack 2012-11-19 19:49:58 +01:00
hda_local.h ALSA: hda - Move fixup code into struct hda_codec 2013-01-12 08:30:45 +01:00
hda_proc.c ALSA: hda - Fix mono amp values in proc output 2013-01-10 10:34:27 +01:00
hda_trace.h ALSA: hda - Clean up CONFIG_SND_HDA_POWER_SAVE 2012-08-30 07:50:13 -07:00
Kconfig ALSA: sound/pci/hda: remove CONFIG_EXPERIMENTAL 2012-10-25 00:17:20 +02:00
Makefile ALSA: hda - Add tracepoints to HD-audio controller driver 2012-10-30 10:39:59 +01:00
patch_analog.c ALSA: hda - Remove snd_hda_codec_amp_update() call from patch_*.c 2013-01-10 10:34:30 +01:00
patch_ca0110.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
patch_ca0132.c ALSA: hda - don't create dysfunctional mixer controls for ca0132 2012-08-20 11:33:23 +02:00
patch_cirrus.c ALSA: hda - Move fixup code into struct hda_codec 2013-01-12 08:30:45 +01:00
patch_cmedia.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
patch_conexant.c ALSA: hda - Move fixup code into struct hda_codec 2013-01-12 08:30:45 +01:00
patch_hdmi.c ALSA: hda - bug fix for invalid connection list of Haswell HDMI codec pins 2012-12-18 11:05:36 +01:00
patch_realtek.c ALSA: hda - More generic auto-mic switching for Realtek codecs 2013-01-12 08:30:50 +01:00
patch_si3054.c sound: Add module.h to the previously silent sound users 2011-10-31 19:31:21 -04:00
patch_sigmatel.c ALSA: hda - Fix pin configuration of HP Pavilion dv7 2012-12-13 14:36:09 +01:00
patch_via.c ALSA: hda - Rearrange INPUT_PIN_ATTR_* 2013-01-12 08:30:48 +01:00