[pulseaudio-tickets] [Bug 84585] Issue of CPU usage with HiFiBerry driver snd_soc_hifiberry_amp with Debian Wheezy kernel 3.12.28

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Oct 22 10:43:09 PDT 2014


https://bugs.freedesktop.org/show_bug.cgi?id=84585

--- Comment #86 from Alessandro Ferri <alessandroferri_015 at fastwebnet.it> ---
Hi Raymond,
I do not know this topic that I am about to expose is a clue that it is
worthwhile, but I checked the modules loaded by the two kernel with lsmod,
these are the results: 

pi at raspberrypi ~ $ uname -a
Linux raspberrypi 3.12.25+ #29 PREEMPT Sun Sep 21 08:38:08 CEST 2014 armv6l
GNU/Linux

pi at raspberrypi ~ $ lsmod
OK    Module                  Size  Used by
V    snd_soc_hifiberry_amp   2003  0 
——>    bcm2708_dmaengine       5224  1 
—->    virt_dma                2301  1 bcm2708_dmaengine
—->    i2c_dev                 5257  0 
V    sg                     19336  0 
V    snd_soc_pcm512x         8959  0 
V    snd_soc_tas5713         5581  1 
V    snd_soc_wm8804          7865  0 
V    snd_soc_bcm2708_i2s     6031  2 
V    regmap_mmio             2818  1 snd_soc_bcm2708_i2s
V    8192cu                552678  0 
V    snd_soc_core          128158  5
snd_soc_pcm512x,snd_soc_wm8804,snd_soc_hifiberry_amp,snd_soc_tas5713,snd_soc_bcm2708_i2s
V    snd_compress            8240  1 snd_soc_core
V    regmap_i2c              1657  4
snd_soc_pcm512x,snd_soc_wm8804,snd_soc_core,snd_soc_tas5713
V    snd_pcm_dmaengine       5481  1 snd_soc_core
V    regmap_spi              1913  3
snd_soc_pcm512x,snd_soc_wm8804,snd_soc_core
V    snd_pcm                81534  3 snd_soc_core,snd_pcm_dmaengine
V    snd_page_alloc          5168  1 snd_pcm
V    snd_seq                54501  0 
V    snd_seq_device          6485  1 snd_seq
V    snd_timer              20353  2 snd_pcm,snd_seq
V    leds_gpio               2055  0 
V    led_class               4119  1 leds_gpio
V    snd                    61860  9
snd_soc_core,snd_timer,snd_pcm,snd_seq,snd_seq_device,snd_compress
X    spi_bcm2708             4808  0 
V    i2c_bcm2708             4715  0 
V    joydev                  9108  0 
V    evdev                  10484  8 

pi at raspberrypi ~ $ uname -a
Linux raspberrypi 3.12.30+ #717 PREEMPT Fri Oct 17 18:46:31 BST 2014 armv6l
GNU/Linux

pi at raspberrypi ~ $ lsmod
OK    Module                  Size  Used by
V    sg                     19877  0 
V    snd_soc_hifiberry_amp   2003  0 
V    snd_soc_wm8804          7932  0 
V    snd_soc_tas5713         5573  1 
V    snd_soc_pcm512x         9034  0 
V    snd_soc_bcm2708_i2s     6210  2 
V    regmap_mmio             2818  1 snd_soc_bcm2708_i2s
V    8192cu                550797  0 
V    snd_soc_core          127849  5
snd_soc_pcm512x,snd_soc_wm8804,snd_soc_hifiberry_amp,snd_soc_tas5713,snd_soc_bcm2708_i2s
V    snd_compress            8259  1 snd_soc_core
V    regmap_i2c              1661  4
snd_soc_pcm512x,snd_soc_wm8804,snd_soc_core,snd_soc_tas5713
V    snd_pcm_dmaengine       5505  1 snd_soc_core
V    regmap_spi              1913  3
snd_soc_pcm512x,snd_soc_wm8804,snd_soc_core
V    snd_pcm                83845  3 snd_soc_core,snd_pcm_dmaengine
V    snd_page_alloc          5132  1 snd_pcm
V    snd_seq                55484  0 
V    snd_seq_device          6469  1 snd_seq
V    snd_timer              20998  3 snd_pcm,snd_seq
V    leds_gpio               2079  0 
V    led_class               4118  1 leds_gpio
V    snd                    62252  10
snd_soc_core,snd_timer,snd_pcm,snd_seq,snd_seq_device,snd_compress
V    evdev                  10661  8 
V    joydev                  9257  0 
V    i2c_bcm2708             4943  0 

There are a difference into the kernel 3.12.30+ in following modules,

——>    bcm2708_dmaengine       5224  1 
—->    virt_dma                2301  1 bcm2708_dmaengine
—->    i2c_dev                 5257  0 

Which are instead present in Kernell 3.12.25+
This probably means that the bcm2708_dmaengine driver has been moved from a
module to a integrated part of the kernel between 3.12.25 and 3.12.30. It
seems, that the whole DMA subsystem has been changed in the last months.

Do not you think that pulseaudio should be updated to follow updates Kernell?


Regards.




(In reply to Raymond from comment #85)
> does aplay work with non power 2 period size ?
> 
> aplay -v -D hw:0,0 --buffer-size=4408 stereo.wav
> 
> 
>  1.102|   0.000) D: [pulseaudio] alsa-util.c: Trying hw:0 with
> SND_PCM_NO_AUTO_FORMAT ...
> (   1.106|   0.003) D: [pulseaudio] alsa-util.c: Managed to open hw:0
> (   1.107|   0.001) D: [pulseaudio] alsa-util.c: Maximum hw buffer size is
> 2972 ms
> (   1.108|   0.001) D: [pulseaudio] alsa-util.c: Set buffer size first (to
> 4408 samples), period size second (to 1102 samples).
> (   1.109|   0.001) I: [pulseaudio] alsa-sink.c: Successfully opened device
> hw:0.
> (   1.110|   0.000) I: [pulseaudio] alsa-sink.c: Selected mapping 'Analog
> Stereo' (analog-stereo).
> (   1.110|   0.000) I: [pulseaudio] alsa-sink.c: Device doesn't support
> mmap(), falling back to UNIX read/write mode.
> (   1.110|   0.000) I: [pulseaudio] alsa-sink.c: Cannot enable timer-based
> scheduling, falling back to sound IRQ scheduling.
> (   1.112|   0.001) I: [pulseaudio] alsa-util.c: Successfully attached to
> mixer 'hw:0'
> 
> 
> it is strange that mmap is not supported
> 
> 
> it is no easy to find a fragment time which can be converted to power two
> period size

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/pulseaudio-bugs/attachments/20141022/4bc5f35e/attachment-0001.html>


More information about the pulseaudio-bugs mailing list