On Tue, 30 Aug 2016 10:32:01 +0200, Markus Trippelsdorf wrote: > > On 2016.08.30 at 10:04 +0200, Takashi Iwai wrote: > > On Mon, 29 Aug 2016 16:02:33 +0200, > > Markus Trippelsdorf wrote: > > > > > > On 2016.08.29 at 14:06 +0200, Markus Trippelsdorf wrote: > > > > On 2016.08.29 at 11:32 +0200, Takashi Iwai wrote: > > > > > On Mon, 29 Aug 2016 11:20:47 +0200, > > > > > Markus Trippelsdorf wrote: > > > > output:ALSA def-222 [003] .... 422.035002: hda_send_cmd: [0000:00:14.2:0] val=0x01570d01 > > > > output:ALSA def-222 [003] .... 422.035061: hda_get_response: [0000:00:14.2:0] val=0x00000000 > > > > > > Actually it right here that sound starts again: > > > > > > markus@x4 hda-emu % ./a.out 0x01570d01 > > > raw value = 0x01570d01 > > > cid = 0, nid = 0x15, verb = 0x70d, parm = 0x01 > > > raw value: verb = 0x70d, parm = 0x1 > > > verbname = set_digi_cvt_1 > > > > So, the program itself sets the value. Which sound backend are you > > using? PulseAudio, whatever? > > No backend at all. I use mpd directly on type hw: > > pcm.!default { > type hw > card 0 > device 3 > } Hmm, it's assigned to device 3? This was supposed to be assigned to HDMI/DP. In anyway, for device 3, you can use pcm.!default "hdmi:0" Then the IEC958 status parameter is set via alsa-lib properly. Takashi > > > Basically you need to track the verb 0x01570dXX that changes the > > digital converter parameter. > > > > When the driver was loaded and initialized, what value does the node > > have? Also check the raw ctl elements, too. The value is controlled > > via "IEC958 Status" controls. If the value at the init time is wrong, > > you may set the initial value via "iecset" program included in > > alsa-utils. > > The driver is build directly into my monolithic kernel (I don't have > modules enabled at all). > At boot time I run "alsactl restore" in an init script. > alsamixer shows that S/PDIF is unmuted, but as I wrote it doesn't work > for several minutes. If I toggle the S/PDIF setting in alsamixer from > unmuted to muted to unmuted then sounds starts working. > > Anyway: > /usr/bin/hda-verb /dev/snd/hwC0D0 0x15 SET_DIGI_CONVERT_1 0x01 &> /dev/null > works fine in my init script, so the issue is solved for me. > > Thanks. > > -- > Markus > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel