[alsa-devel] DMA Physical Addr Issue.
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
Adish Kuvelker wrote:
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.
In hex, that value is 0xc2375000, which looks like a perfectly cromulent address.
Regards, Clemens
participants (2)
-
Adish Kuvelker
-
Clemens Ladisch