Re: [alsa-devel] playback write error(DMA or IRQ trouble?)
I'll try to fix the programs from this Monday and I think I have to learn alsa system more deeply because I 'm a newcomer about it. Thank you
2011/5/20 innoway@mymelody.com:
I develop an embedded system on the Linux board with Freescale
i.MX27
(ARM processor). I succeed on sound, which is transferred using Synchronous Serial Interface (SSI). It,s fine and then I try to do
test
of inserting or pulling out a USB memory stick in the USB host
connector
while sounding. I get the following error message from snd_pcm_lib_write1() of <linux src>/sound /core/pcm_lib.c after
waiting
for a while (about 10sec). playback write error (DMA or IRQ trouble?) and then from snd_pcm_drain() of <linux src>/sound/core/pcm_native.c playback drain error (DMA or IRQ trouble?) (No sound during this period)
and then it is sounding again.
I want to prevent the sound from stopping even if something happens suddenly such as the USB memory stick is plugged in or out.
I try to fix the above programs, but I don't succeed.
Can someone give me the clue? [13:21:38]:/proc# cat interrupts CPU0 12: 3456 - mxc_i2c 16: 141 - CSPI_IRQ 18: 952 - mxcintuart 26: 1051255 - MXC Timer Tick 28: 29446 - PCMCIA IRQ, ide0 50: 33 - fec 54: 793 - ehci_hcd:usb1 56: 1 - arc_udc 61: 0 - LCDC 117: 0 - m66291_udc 147: 0 - PMIC_IRQ 157: 337179 - SMSC_LAN911x_ISR 176: 0 - fec(MII)
[13:35:03]:/proc# cat dma dma channel 0: unused dma channel 1: unused dma channel 2: unused dma channel 3: unused dma channel 4: unused dma channel 5: unused dma channel 6: unused dma channel 7: unused dma channel 8: unused dma channel 9: unused dma channel 10: unused dma channel 11: unused dma channel 12: unused dma channel 13: unused dma channel 14: unused dma channel 15: unused Thank you
Masanori Inoue
This error also occur in snd-hda-intel
echo 32768 > /proc/asound/Intel/pcm0p/sub0/prealloc
speaker-test which use maximum buffer size also have (DMA or IRQ error in system log
THis seem to be related to the schedule_timeout
tout = schedule_timeout(msecs_to_jiffies(10000));
I guess this is why PA server treat avail > 10 seconds is invalid _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
participants (1)
-
innoway@mymelody.com