]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - src/patches/suse-2.6.27.25/patches.drivers/alsa-hda-realtek-alc269-dmic
Updated xen patches taken from suse.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.25 / patches.drivers / alsa-hda-realtek-alc269-dmic
1 From: Takashi Iwai <tiwai@suse.de>
2 Subject: ALSA: hda - Add digital-mic for ALC269 auto-probe mode
3 Patch-mainline:
4 References: bnc#440626
5
6 The digital mic wasn't detected properly for ALC269 auto-probing mode
7 because of its widget number. Fixed now.
8
9 Signed-off-by: Takashi Iwai <tiwai@suse.de>
10
11 ---
12 sound/pci/hda/patch_realtek.c | 22 ++++++++++++++++++++--
13 1 file changed, 20 insertions(+), 2 deletions(-)
14
15 --- a/sound/pci/hda/patch_realtek.c
16 +++ b/sound/pci/hda/patch_realtek.c
17 @@ -12251,8 +12251,26 @@ static int alc269_auto_create_multi_out_
18 return 0;
19 }
20
21 -#define alc269_auto_create_analog_input_ctls \
22 - alc880_auto_create_analog_input_ctls
23 +static int alc269_auto_create_analog_input_ctls(struct alc_spec *spec,
24 + const struct auto_pin_cfg *cfg)
25 +{
26 + int err;
27 +
28 + err = alc880_auto_create_analog_input_ctls(spec, cfg);
29 + if (err < 0)
30 + return err;
31 + /* digital-mic input pin is excluded in alc880_auto_create..()
32 + * because it's under 0x18
33 + */
34 + if (cfg->input_pins[AUTO_PIN_MIC] == 0x12 ||
35 + cfg->input_pins[AUTO_PIN_FRONT_MIC] == 0x12) {
36 + struct hda_input_mux *imux = &spec->private_imux;
37 + imux->items[imux->num_items].label = "Int Mic";
38 + imux->items[imux->num_items].index = 0x05;
39 + imux->num_items++;
40 + }
41 + return 0;
42 +}
43
44 #ifdef CONFIG_SND_HDA_POWER_SAVE
45 #define alc269_loopbacks alc880_loopbacks