ALSA: hda - AD1988 codec - fix SPDIF-input mixer initialization (unmute)
The SPDIF-input pin 0x1c is muted by default in hardware. Unmute appropriate pin to get captured samples instead zeros. Tested on Lenovo Thinkstation. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
c91a988dc6
commit
fd0b092a7b
1 changed files with 10 additions and 1 deletions
|
@ -2458,6 +2458,12 @@ static struct hda_verb ad1988_spdif_init_verbs[] = {
|
||||||
{ }
|
{ }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct hda_verb ad1988_spdif_in_init_verbs[] = {
|
||||||
|
/* unmute SPDIF input pin */
|
||||||
|
{0x1c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
|
||||||
|
{ }
|
||||||
|
};
|
||||||
|
|
||||||
/* AD1989 has no ADC -> SPDIF route */
|
/* AD1989 has no ADC -> SPDIF route */
|
||||||
static struct hda_verb ad1989_spdif_init_verbs[] = {
|
static struct hda_verb ad1989_spdif_init_verbs[] = {
|
||||||
/* SPDIF-1 out pin */
|
/* SPDIF-1 out pin */
|
||||||
|
@ -3193,8 +3199,11 @@ static int patch_ad1988(struct hda_codec *codec)
|
||||||
ad1988_spdif_init_verbs;
|
ad1988_spdif_init_verbs;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (spec->dig_in_nid && codec->vendor_id < 0x11d4989a)
|
if (spec->dig_in_nid && codec->vendor_id < 0x11d4989a) {
|
||||||
spec->mixers[spec->num_mixers++] = ad1988_spdif_in_mixers;
|
spec->mixers[spec->num_mixers++] = ad1988_spdif_in_mixers;
|
||||||
|
spec->init_verbs[spec->num_init_verbs++] =
|
||||||
|
ad1988_spdif_in_init_verbs;
|
||||||
|
}
|
||||||
|
|
||||||
codec->patch_ops = ad198x_patch_ops;
|
codec->patch_ops = ad198x_patch_ops;
|
||||||
switch (board_config) {
|
switch (board_config) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue