ALSA: ice1724: Fix surround on Chaintech AV-710
Fix the num_total_dacs setting for Chaintech AV710. The existing comment that only PSDOUT0 is connected is correct, but since the card is using packed AC97 mode to send 6 channels to the codec, num_total_dacs should be set to 6 and not 2. This allows 6-channel surround to work. Also clarify a comment regarding the additional WM8728 codec on this card (it's connected to the SPDIF output and always receives the same data). Signed-off-by: Robert Hancock <hancockrwd@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Родитель
378e869fd0
Коммит
43189a38da
|
@ -52,11 +52,13 @@ static int __devinit snd_vt1724_amp_init(struct snd_ice1712 *ice)
|
||||||
|
|
||||||
/* only use basic functionality for now */
|
/* only use basic functionality for now */
|
||||||
|
|
||||||
ice->num_total_dacs = 2; /* only PSDOUT0 is connected */
|
/* VT1616 6ch codec connected to PSDOUT0 using packed mode */
|
||||||
|
ice->num_total_dacs = 6;
|
||||||
ice->num_total_adcs = 2;
|
ice->num_total_adcs = 2;
|
||||||
|
|
||||||
/* Chaintech AV-710 has another codecs, which need initialization */
|
/* Chaintech AV-710 has another WM8728 codec connected to PSDOUT4
|
||||||
/* initialize WM8728 codec */
|
(shared with the SPDIF output). Mixer control for this codec
|
||||||
|
is not yet supported. */
|
||||||
if (ice->eeprom.subvendor == VT1724_SUBDEVICE_AV710) {
|
if (ice->eeprom.subvendor == VT1724_SUBDEVICE_AV710) {
|
||||||
for (i = 0; i < ARRAY_SIZE(wm_inits); i += 2)
|
for (i = 0; i < ARRAY_SIZE(wm_inits); i += 2)
|
||||||
wm_put(ice, wm_inits[i], wm_inits[i+1]);
|
wm_put(ice, wm_inits[i], wm_inits[i+1]);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче