[alsa-devel] Problem setting mixer switch with amixer/alsactl.
ipaqlinux at oliford.co.uk
Wed Oct 22 20:47:20 CEST 2008
I have a system with a wm9713 ac97 codec. It has a single speaker
connected to SPKL and OUT4 in BTL config.
Currently I'm setting up the audio path with a small script using amixer:
amixer cset numid=90 2 # Out4 Mux = Inv2
amixer cset numid=95 3 # Left Speaker Out Mux = Speaker
amixer cset numid=88 2 # DAC Inv Mux 2 = Speaker
amixer cset numid=31 1 # Out4 Playback Switch = on
amixer cset numid=2 1,0 # Speaker Playback Switch = L:on, R:off
amixer cset numid=62 1 # Speaker Mixer PCM Playback Switch = on
If I do all of the above except for setting 'Speaker Mixer PCM Playback
Switch' and then un-mute that in the full alsamixer program, the audio
works through the speaker. If I run the 'Speaker Mixer PCM Playback
Switch' amixer command (either before or after setting it with
alsamixer), the audio stops working. Once that's happened I can't get it
back at all without a full reboot (even suspend/resume doesn't help).
Setting it with alsamixer so it works and then using alsactl to save and
restore the config also breaks it.
I'm not sure how to go about debugging this one, can anyone help?
Also, is there a way to (and should I) set the DAC -> SPKMIX -> INV2 ->
OUT4 etc in my platform definition in the kernel code, rather than doing
it with amixer?
More information about the Alsa-devel