[alsa-devel] snd_ctl_elem_write fails -EPERM if snd_pcm is open

Pavel Hofman pavel.hofman at insite.cz
Tue Apr 15 20:33:13 CEST 2008


Bouterse, Bob wrote:
> I am trying to sent IEC958 status bits on a VT1708A HAD-INTEL codec
> while audio is being output.
> snd_ctl_elem_write returns -EPERM from
> linux-2.6.24.3/sound/core/control.c:769 .
>  
> Is there some way I can do this?
>  
> FYI using iecset will also give you an:
> # iecset copywrite on
> snd_ctl_elem_write: Operation not permitted
>  
> I am using alsa-lib-1.0.14a

Hi,

I guess the reason is in /usr/share/alsa/cards/HDA-Intel.conf . If I 
understand correctly, upon opening the iec958 stream, the status bits 
control gets locked

..........
			hook_args [
			{
				name "IEC958 Playback Default"
				lock true
				preserve true
				value [ $AES0 $AES1 $AES2 $AES3 ]
			}
...........

The same applies to a number of other cards.

Pavel.



More information about the Alsa-devel mailing list