[alsa-devel] [PATCH 17/31] HDA patch_via.c: Add second S/PDIF out control for VT1708S and VT1702.
Li Bo
liboat at gmail.com
Tue Oct 6 07:01:42 CEST 2009
They are separate S/PDIFs, and in our test, slave SPDIF seems can work
independently with master SPDIF. I'll do some test later.
On Mon, Oct 5, 2009 at 11:14 PM, Takashi Iwai <tiwai at suse.de> wrote:
> At Mon, 5 Oct 2009 22:27:35 +0800,
> Li Bo wrote:
>>
>> [ALSA] HDA VIA: Add second S/PDIF out control for VT1708S and VT1702.
>>
>> Signed-off-by: Lydia Wang <lydiawang at viatech.com.cn>
>
> The slave SPDIFs are really slaves. They are supposed to have identical
> SPDIF status bits as the master. So, creating the individual SPDIF status
> controls is wrong.
>
> If they have to be handled separately, we shouldn't use slave SPDIF but
> create different streams, etc.
>
>
> Takashi
>
>
>>
>> Index: sound-2.6/sound/pci/hda/patch_via.c
>> ===================================================================
>> --- sound-2.6.orig/sound/pci/hda/patch_via.c 2009-10-05 15:10:59.000000000 +0800
>> +++ sound-2.6/sound/pci/hda/patch_via.c 2009-10-05 15:11:02.000000000 +0800
>> @@ -1265,6 +1265,13 @@
>> if (err < 0)
>> return err;
>> spec->multiout.share_spdif = 1;
>> + /* lydia add for second spdif out */
>> + if (spec->slave_dig_outs[0]) {
>> + err = snd_hda_create_spdif_out_ctls(codec,
>> + spec->slave_dig_outs[0]);
>> + if (err < 0)
>> + return err;
>> + }
>> }
>> if (spec->dig_in_nid) {
>> err = snd_hda_create_spdif_in_ctls(codec, spec->dig_in_nid);
>> @@ -3127,7 +3134,7 @@
>> };
>>
>> static struct hda_pcm_stream vt1708S_pcm_digital_playback = {
>> - .substreams = 1,
>> + .substreams = 2,
>> .channels_min = 2,
>> .channels_max = 2,
>> /* NID is set in via_build_pcms */
>>
>
More information about the Alsa-devel
mailing list