19 Jul
2010
19 Jul
'10
2:05 p.m.
Hello,
I have allocated the DMA memory using the function "snd_pcm_lib_preallocate_pages_for_all" passing SNDRV_DMA_TYPE_DEV and "card->dev" as inputs to the function. Later, in the hw_params call out function I allocate pages to the requested DMA memory region using the function "snd_pcm_lib_malloc_pages".
I play a wav file "Noise.wav" from command line by giving the following command
./aplay --file-type wav -f dat Noise.wav
And, when I print the DMA region physical address in the "prepare" call out through "dma_addr" member of the runtime structure I get a weird decimal value of "-1036562432" as the physical address.
Can anyone point where I might be going wrong in the whole DMA memory allocation?
Regards; Aadish