diff options
| author | David Henningsson <david.henningsson@canonical.com> | 2010-10-13 09:48:24 -0400 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2010-11-10 20:01:07 -0500 |
| commit | 89feca1a16b05651d9c500e5572c0d6882873396 (patch) | |
| tree | d71c1608632719b5912f34fe4a53c4a968a502ac | |
| parent | ea7dd251251a8d4694e9929104209dcc06220630 (diff) | |
ALSA: HDA: Enable digital mic on IDT 92HD87B
BugLink: http://launchpad.net/bugs/673075
According to the datasheet of 92HD87B, there is a digital mic
at nid 0x11, so enable it in order to be able to use the mic.
Cc: stable@kernel.org
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
| -rw-r--r-- | sound/pci/hda/patch_sigmatel.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c index 93fa59cc60e..cfd73afad88 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 | ||
| 393 | static 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 |
| 393 | static unsigned long stac92hd83xxx_capvols[] = { | 398 | static unsigned long stac92hd83xxx_capvols[] = { |
| 394 | HDA_COMPOSE_AMP_VAL(0x17, 3, 0, HDA_OUTPUT), | 399 | HDA_COMPOSE_AMP_VAL(0x17, 3, 0, HDA_OUTPUT), |
| @@ -5452,12 +5457,17 @@ again: | |||
| 5452 | stac92hd83xxx_brd_tbl[spec->board_config]); | 5457 | stac92hd83xxx_brd_tbl[spec->board_config]); |
| 5453 | 5458 | ||
| 5454 | switch (codec->vendor_id) { | 5459 | switch (codec->vendor_id) { |
| 5460 | case 0x111d76d1: | ||
| 5461 | case 0x111d76d9: | ||
| 5462 | spec->dmic_nids = stac92hd87b_dmic_nids; | ||
| 5463 | spec->num_dmics = stac92xx_connected_ports(codec, | ||
| 5464 | stac92hd87b_dmic_nids, | ||
| 5465 | STAC92HD87B_NUM_DMICS); | ||
| 5466 | /* Fall through */ | ||
| 5455 | case 0x111d7666: | 5467 | case 0x111d7666: |
| 5456 | case 0x111d7667: | 5468 | case 0x111d7667: |
| 5457 | case 0x111d7668: | 5469 | case 0x111d7668: |
| 5458 | case 0x111d7669: | 5470 | case 0x111d7669: |
| 5459 | case 0x111d76d1: | ||
| 5460 | case 0x111d76d9: | ||
| 5461 | spec->num_pins = ARRAY_SIZE(stac92hd88xxx_pin_nids); | 5471 | spec->num_pins = ARRAY_SIZE(stac92hd88xxx_pin_nids); |
| 5462 | spec->pin_nids = stac92hd88xxx_pin_nids; | 5472 | spec->pin_nids = stac92hd88xxx_pin_nids; |
| 5463 | spec->mono_nid = 0; | 5473 | spec->mono_nid = 0; |
