Pārlūkot izejas kodu

[ALSA] hda: STAC9228 DMIC

Added support for the dmics and enabled EAPD for several laptops with
STAC9228 cards.

Signed-off-by: Matthew Ranostay <mranostay@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Matthew Ranostay 17 gadi atpakaļ
vecāks
revīzija
f1f208d0b4
1 mainītis faili ar 10 papildinājumiem un 3 dzēšanām
  1. 10 3
      sound/pci/hda/patch_sigmatel.c

+ 10 - 3
sound/pci/hda/patch_sigmatel.c

@@ -2723,14 +2723,21 @@ static int patch_stac927x(struct hda_codec *codec)
 		spec->dmic_nids = stac927x_dmic_nids;
 		spec->num_dmics = STAC927X_NUM_DMICS;
 		spec->dmux_nid = 0x1b;
+
+		/* Enable DMIC0 */
+		stac92xx_set_config_reg(codec, 0x13, 0x90a60040);
+
+		/* GPIO2 High = Enable EAPD */
+		spec->gpio_mask = spec->gpio_data = 0x00000004;
 		break;
 	default:
-		spec->num_dmics = 0;	
+		spec->num_dmics = 0;
+
+		/* GPIO0 High = Enable EAPD */
+		spec->gpio_mask = spec->gpio_data = 0x00000001;
 	}
 
 	spec->multiout.dac_nids = spec->dac_nids;
-	/* GPIO0 High = Enable EAPD */
-	spec->gpio_mask = spec->gpio_data = 0x00000001;
 	stac92xx_enable_gpio_mask(codec); 
 	
 	err = stac92xx_parse_auto_config(codec, 0x1e, 0x20);