Re: [alsa-devel] Invalid PCM pointer with CMI8738 and pcm.c buffer underuns
I've previously posted under ALSA's user mailing list so to avoid the clutter, the details about what's happening is here: http://article.gmane.org/gmane.linux.alsa.user/38258 http://article.gmane.org/gmane.linux.alsa.user/38260
There was no debug info under /proc/asound/card0/ so nothing to give from there unless you guys need something specific.
Output of alsa-debug.sh: http://www.alsa-project.org/db/?f=26187faadd47f3626029ba667cb004e74695f2b2
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pc...
Seem cannot read valid value from register within three trials
state.CMI8738 { control.1 { iface PCM device 2 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 comment { access read type INTEGER count 6 range '0 - 36' } }
Seem bug in adding channel map to iec958 instead of analog
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pc...
pcm.!default { type plug slave.pcm "dmixer" }
You need asym plugin for playback and capture when overwrite pcm.default
Seem cannot read valid value from register within three trials
state.CMI8738 { control.1 {
[...]
Seem bug in adding channel map to iec958 instead of analog
What does that mean? What should I do with those patches? Should I apply them and try to compile the latest ALSA version?
pcm.!default { type plug slave.pcm "dmixer" }
You need asym plugin for playback and capture when overwrite pcm.default
Should I change my /etc/asound.conf like in the examples here? http://alsa.opensrc.org/Asym
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pc...
you have to dump the value of the register and increase the number of trials to find out whether you can get a valid value
state.CMI8738 { control.1 {
[...]
Seem bug in adding channel map to iec958 instead of analog
What does that mean? What should I do with those patches? Should I apply them and try to compile the latest ALSA version?
the patch did not channel map to the analog device
control.1 { iface PCM device 2 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 comment { access read type INTEGER count 6 range '0 - 36' } }
!!Aplay/Arecord output !!--------------------
APLAY
**** List of PLAYBACK Hardware Devices **** card 0: CMI8738 [C-Media CMI8738], device 0: CMI8738-MC6 [C-Media PCI DAC/ADC] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: CMI8738 [C-Media CMI8738], device 1: CMI8738-MC6 [C-Media PCI 2nd DAC] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: CMI8738 [C-Media CMI8738], device 2: CMI8738-MC6 [C-Media PCI IEC958] Subdevices: 1/1 Subdevice #0: subdevice #0
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pc...
http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/conf/cards/CMI8738-...
CMI8738-MC6.pcm.rear.0 {
@args [ CARD ] @args.CARD { type string } type hw card $CARD device 1 }
device 0 seem emulate sb16 , you need to ask the author how this driver support multi-channels
seem device 1 is used for multi-channels playback and device 2 is used for iec958
pcm.!default { type plug slave.pcm "dmixer" }
You need asym plugin for playback and capture when overwrite pcm.default
Should I change my /etc/asound.conf like in the examples here? http://alsa.opensrc.org/Asym
yes, you need define both playback and capture if you overwrite pcm.default since dmix does not support capture
Raymond Yau wrote:
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pc...
you have to dump the value of the register and increase the number of trials to find out whether you can get a valid value
As shown in the bug, the register fails continuously; this is not a transient failure that could be worked around like in that commit.
Seem bug in adding channel map to iec958 instead of analog
What does that mean?
Nothing relevant to this problem.
What should I do with those patches?
Nothing.
Regards, Clemens
yes, you need define both playback and capture if you overwrite pcm.default since dmix does not support capture
I'm less concerned with the capture part of this card as I record audio through the mic of the webcam anyway. But having added that, it hasn't solved my previous problem with not being able to hear sounds from multiple sources, and also I can't use alsamixer now.
Seem bug in adding channel map to iec958 instead of analog
What does that mean?
Nothing relevant to this problem.
What should I do with those patches?
Nothing.
So I guess that means there aren't really any solutions to my bug? What happens next? (sorry for all the annoying questions)
participants (3)
-
andoru
-
Clemens Ladisch
-
Raymond Yau