Re: Driver mmap kernel memory

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Takashi Iwai wrote:
> At Wed, 7 Feb 2007 09:31:50 +0100,
> Micha Nelissen wrote:
>> 
>> The CPU architecture is armeb.
> 
> OK then you'd need dma_mmap_coherent() for mmapping the data.

Hmm? I'm not mmapping anything into user space, I suppose ALSA does this
?

In the driver, I access the buffer using the runtime->dma_area field.
 
>> I have more information now. The problem disappears if I do the
>> endian swap in the kernel driver. That means that I specify
>> SNDDRV_PCM_FMTBIT_S16_BE | SNDDRV_PCM_FMTBIT_S16_LE, instead of only
>> SNDDRV_PCM_FMTBIT_S16_BE, and I decide using the runtime->format
>> whether to swap or not.
> 
> Could you elaborate?  It sounds like a coincidence to me...

What do you want to know ? I've attached some code that shows the piece
in the kernel driver doing the checking of the buffer values
(alsa-buf-check.c). Also attached is an alsa test program that I used
(testtune.c).

Fields in my_device: p_start (= dma_area), p_cur (= current playback
pointer), p_end (= end of playback buffer); all point into dma_area.

Hope this helps,

Micha

Attachment: alsa-buf-check.c
Description: alsa-buf-check.c

Attachment: testtune.c
Description: testtune.c

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux