diff options
author | Takashi Iwai <tiwai@suse.de> | 2006-06-13 05:57:22 -0400 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2006-06-22 15:34:21 -0400 |
commit | 6540dffa6ecfe0d99fb263548dcc4b35ccefe784 (patch) | |
tree | 45aab0273192703d269578bf35f3b9fed9ef9bcb /sound | |
parent | 70c5acbdcc7bb1651bb166f9e4b2345759a9fb18 (diff) |
[ALSA] hda-codec - Add SPDIF support to Thinkpad T/X/Z60
Added IEC958 (SPDIF) output support to Thinkpad T/X/Z60 with
AD1981HD codec. The spdif jack is on docking station.
Also, renamed 'IEC958 Playback Route' to 'IEC958 Playback Source'
to avoid the mixer name confliction with IEC958 switch.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/pci/hda/patch_analog.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/sound/pci/hda/patch_analog.c b/sound/pci/hda/patch_analog.c index e83c7b01cbb6..e13e36aefbb0 100644 --- a/sound/pci/hda/patch_analog.c +++ b/sound/pci/hda/patch_analog.c | |||
@@ -963,7 +963,7 @@ static struct snd_kcontrol_new ad1983_mixers[] = { | |||
963 | }, | 963 | }, |
964 | { | 964 | { |
965 | .iface = SNDRV_CTL_ELEM_IFACE_MIXER, | 965 | .iface = SNDRV_CTL_ELEM_IFACE_MIXER, |
966 | .name = SNDRV_CTL_NAME_IEC958("",PLAYBACK,NONE) "Route", | 966 | .name = SNDRV_CTL_NAME_IEC958("",PLAYBACK,NONE) "Source", |
967 | .info = ad1983_spdif_route_info, | 967 | .info = ad1983_spdif_route_info, |
968 | .get = ad1983_spdif_route_get, | 968 | .get = ad1983_spdif_route_get, |
969 | .put = ad1983_spdif_route_put, | 969 | .put = ad1983_spdif_route_put, |
@@ -1103,7 +1103,7 @@ static struct snd_kcontrol_new ad1981_mixers[] = { | |||
1103 | /* identical with AD1983 */ | 1103 | /* identical with AD1983 */ |
1104 | { | 1104 | { |
1105 | .iface = SNDRV_CTL_ELEM_IFACE_MIXER, | 1105 | .iface = SNDRV_CTL_ELEM_IFACE_MIXER, |
1106 | .name = SNDRV_CTL_NAME_IEC958("",PLAYBACK,NONE) "Route", | 1106 | .name = SNDRV_CTL_NAME_IEC958("",PLAYBACK,NONE) "Source", |
1107 | .info = ad1983_spdif_route_info, | 1107 | .info = ad1983_spdif_route_info, |
1108 | .get = ad1983_spdif_route_get, | 1108 | .get = ad1983_spdif_route_get, |
1109 | .put = ad1983_spdif_route_put, | 1109 | .put = ad1983_spdif_route_put, |
@@ -1349,6 +1349,14 @@ static struct snd_kcontrol_new ad1981_thinkpad_mixers[] = { | |||
1349 | .get = ad198x_mux_enum_get, | 1349 | .get = ad198x_mux_enum_get, |
1350 | .put = ad198x_mux_enum_put, | 1350 | .put = ad198x_mux_enum_put, |
1351 | }, | 1351 | }, |
1352 | /* identical with AD1983 */ | ||
1353 | { | ||
1354 | .iface = SNDRV_CTL_ELEM_IFACE_MIXER, | ||
1355 | .name = SNDRV_CTL_NAME_IEC958("",PLAYBACK,NONE) "Source", | ||
1356 | .info = ad1983_spdif_route_info, | ||
1357 | .get = ad1983_spdif_route_get, | ||
1358 | .put = ad1983_spdif_route_put, | ||
1359 | }, | ||
1352 | { } /* end */ | 1360 | { } /* end */ |
1353 | }; | 1361 | }; |
1354 | 1362 | ||
@@ -1422,7 +1430,6 @@ static int patch_ad1981(struct hda_codec *codec) | |||
1422 | break; | 1430 | break; |
1423 | case AD1981_THINKPAD: | 1431 | case AD1981_THINKPAD: |
1424 | spec->mixers[0] = ad1981_thinkpad_mixers; | 1432 | spec->mixers[0] = ad1981_thinkpad_mixers; |
1425 | spec->multiout.dig_out_nid = 0; | ||
1426 | spec->input_mux = &ad1981_thinkpad_capture_source; | 1433 | spec->input_mux = &ad1981_thinkpad_capture_source; |
1427 | break; | 1434 | break; |
1428 | } | 1435 | } |