aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_sigmatel.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/pci/hda/patch_sigmatel.c')
-rw-r--r--sound/pci/hda/patch_sigmatel.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 93fa59cc60ef..5c710807dfe5 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -389,6 +389,11 @@ static hda_nid_t stac92hd83xxx_dmic_nids[STAC92HD83XXX_NUM_DMICS + 1] = {
389 0x11, 0x20, 0 389 0x11, 0x20, 0
390}; 390};
391 391
392#define STAC92HD87B_NUM_DMICS 1
393static hda_nid_t stac92hd87b_dmic_nids[STAC92HD87B_NUM_DMICS + 1] = {
394 0x11, 0
395};
396
392#define STAC92HD83XXX_NUM_CAPS 2 397#define STAC92HD83XXX_NUM_CAPS 2
393static unsigned long stac92hd83xxx_capvols[] = { 398static unsigned long stac92hd83xxx_capvols[] = {
394 HDA_COMPOSE_AMP_VAL(0x17, 3, 0, HDA_OUTPUT), 399 HDA_COMPOSE_AMP_VAL(0x17, 3, 0, HDA_OUTPUT),
@@ -3486,10 +3491,8 @@ static int stac92xx_auto_create_dmic_input_ctls(struct hda_codec *codec,
3486 return err; 3491 return err;
3487 } 3492 }
3488 3493
3489 if (snd_hda_get_bool_hint(codec, "separate_dmux") != 1) { 3494 if (snd_hda_get_bool_hint(codec, "separate_dmux") != 1)
3490 snd_hda_add_imux_item(imux, label, index, NULL); 3495 snd_hda_add_imux_item(imux, label, index, NULL);
3491 spec->num_analog_muxes++;
3492 }
3493 } 3496 }
3494 3497
3495 return 0; 3498 return 0;
@@ -5452,12 +5455,17 @@ again:
5452 stac92hd83xxx_brd_tbl[spec->board_config]); 5455 stac92hd83xxx_brd_tbl[spec->board_config]);
5453 5456
5454 switch (codec->vendor_id) { 5457 switch (codec->vendor_id) {
5458 case 0x111d76d1:
5459 case 0x111d76d9:
5460 spec->dmic_nids = stac92hd87b_dmic_nids;
5461 spec->num_dmics = stac92xx_connected_ports(codec,
5462 stac92hd87b_dmic_nids,
5463 STAC92HD87B_NUM_DMICS);
5464 /* Fall through */
5455 case 0x111d7666: 5465 case 0x111d7666:
5456 case 0x111d7667: 5466 case 0x111d7667:
5457 case 0x111d7668: 5467 case 0x111d7668:
5458 case 0x111d7669: 5468 case 0x111d7669:
5459 case 0x111d76d1:
5460 case 0x111d76d9:
5461 spec->num_pins = ARRAY_SIZE(stac92hd88xxx_pin_nids); 5469 spec->num_pins = ARRAY_SIZE(stac92hd88xxx_pin_nids);
5462 spec->pin_nids = stac92hd88xxx_pin_nids; 5470 spec->pin_nids = stac92hd88xxx_pin_nids;
5463 spec->mono_nid = 0; 5471 spec->mono_nid = 0;