Hi,
We have been observing a strange problem with the Audio driver in
Davinci (Both MontaVista and GIT). The driver seems to lock up sometimes
in the write call.
To simulate the issue, I tried the following.
# cat file1.pcm > /dev/dsp
# cat file1.pcm > /dev/dsp
When the second cat starts, there is no audio output and we observed
that the cat is blocking in the write call. Tried enabling debug prints
in davinci-audio.c and davinci-audio-dma-intfc.c . The output of the
second command is attached at the end of this mail. Please note that the
"sound_dma_irq_handler" is not getting called. But, in the first
iteration, the irq handler is getting called. This problem is very
consistent.
Has anyone faced this problem. Any inputs ???
Thanks and Regards,
Praveen
# [davinci_audio.c:[audio_open] start
DMA REQUEST FOR playback
[davinci_request_sound_dma]: start
<davinci_request_sound_dma>: Master chan = 2
[davinci_request_sound_dma]: end(0)
SETUP FOR PLAYBACK
[audio_reset]: start
[audio_reset]: end(0)
[davinci_audio.c:[audio_open] end(0)
audio_write: count=8192
[audio_setup_buf]: start
[audio_setup_buf]: end(0)
write 3072 to 0
[audio_process_dma]: start
[davinci_start_sound_dma]: start
[audio_set_dma_params_play]: start
<audio_set_dma_params_play>: audio_set_dma_params_play channel = 72
dma_ptr = 827b0000 dma_size=c00
[audio_set_dma_params_play]: end(0)
[audio_start_dma_chain]: start
[audio_start_dma_chain]: end(0)
[davinci_start_sound_dma]: end(0)
[audio_process_dma]: end(0)
write 3072 to 1
[audio_process_dma]: start
[davinci_start_sound_dma]: start
[audio_set_dma_params_play]: start
<audio_set_dma_params_play>: audio_set_dma_params_play channel = 73
dma_ptr = 827b0c00 dma_size=c00
[audio_set_dma_params_play]: end(0)
[audio_start_dma_chain]: start
[audio_start_dma_chain]: end(0)
[davinci_start_sound_dma]: end(0)
[audio_process_dma]: end(0)
write 2048 to 2
audio_write: return=8192
audio_write: count=8192
write 1024 to 2
[audio_process_dma]: start
[davinci_start_sound_dma]: start
<davinci_start_sound_dma>: queue full
[davinci_start_sound_dma]: end(4294967294)
<audio_process_dma>: error
error
[audio_process_dma]: end(4294967294)
write 3072 to 3
[audio_process_dma]: start
[davinci_start_sound_dma]: start
<davinci_start_sound_dma>: queue full
[davinci_start_sound_dma]: end(4294967294)
<audio_process_dma>: error
error
[audio_process_dma]:
end(4294967294)
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source