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

Reply via email to