[alsa-devel] How to support software mixing on QUALCOMM 72XX without mmap?

GNUtoo GNUtoo at no-log.org
Sat May 29 23:40:10 CEST 2010

On Sun, 2010-05-30 at 00:54 +0800, Berg wrote:
> Hello,guys.
>     I'm porting ASLA1.0.23 to qualcomm 72xx base on ARM11.
>     The first instance,"aplay test.wav", works now, but the second
> instance should fail with "device busy" error message.
>     I have tried plug dmix and dshare "aply -D plug:mycard
> test.wav", but met a fail again for the soc chip doesn't support mmap.
> Of course,pcm_mycard is defined in /etc/asound.conf.
>     In my pc ,both above cmds work well .
>     Though,the document shows that:
>        NOTE: For ALSA 1.0.9rc2 and higher you don't need to setup
> dmix for analogue output. Dmix is enabled by default for soundcards
> which don't support hardware mixing. You still need to set it up for
> digital outputs.
>     My questions are:
>         1)Is  software mixing  implemented in ALSA Driver,or in ALSA LIB?
>         2)What could I do to make the software mixing work? Is there
> any special configure which need to adjust?
>     And when testing on pc whth HD audio, I noticed that
>      A)when aplay instances runs WITHOUT dmix, the result of"cat
> /etc/one_of_my_aplay_pid/maps" should like:
>                     ...
>                     b331d000-b731e000 rw-s 00000000 00:15 862346
> /dev/shm/pulse-shm-2882420837
>                     ...
>     B)when aplay instances runs  WITH dmix,the result is:
>                  ...
>                  b7511000-b7519000 rw-s 00000000 00:0f 4560
> /dev/snd/pcmC0D0p
>                  b7519000-b751a000 rw-s 81000000 00:0f 4560
> /dev/snd/pcmC0D0p
>                  b751a000-b751b000 r--s 80000000 00:0f 4560
> /dev/snd/pcmC0D0p
>                  ...
>     So,the third question:
>         3) From A) and B),can I make a result that the mmap feacture
> is not necessary for the buildin software mixing ?
>     Expect your help,please
>    berg
hi, on which driver do you base your work? codeaurora?
I've a driver that works with aplay and mplayer but that has some minor
buffer underrun(I need some time to fix that),it works fine for music
but not for videos.
look inside http://gitorious.org/htc-msm-2-6-32/leviathan-incoming
basically the fix for making mplayer work(the fix was suggested by by
Thingol on IRC,and the debugging/explaining of the problem was done by
me) is in  the following commit:


More information about the Alsa-devel mailing list