[pulseaudio-discuss] Soundcard's powersave mode

Mikhail Morfikov mmorfikov at gmail.com
Mon Oct 5 11:05:44 PDT 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

W dniu 2015-10-05 o 06:21, Mikhail Morfikov pisze:
> W dniu 2015-10-05 o 01:27, Tanu Kaskinen pisze:
>> On Sun, 2015-10-04 at 20:28 +0200, Mikhail Morfikov wrote:
>>> In the case of snd_hda_intel kernel module, there's two options called
>>> power_save and power_save_controller . I've set them to the following
>>> values:
>>>
>>> # systool -v -m snd_hda_intel | grep power
>>>     power_save          = "10"
>>>     power_save_controller= "Y"
>>>     
>>> According to archlinux wiki (https://wiki.archlinux.org/index.php/Power_management#Audio),
>>> the power_save parameter is measured in seconds, and it should idle the
>>> audio card after 10s.
>>>
>>> The question is how could I know whether this works or not? Is there
>>> any way to be sure that the powersave mode was activated? I've heard
>>> that there's could be some "clicking" when the state of the sound
>>> card changes, but I don't hear anything. Some people reported that the
>>> volume behaves really strange, but it seems that it works just fine on
>>> my machine.
>>>
>>> Does the powersave mode in the kernel module is somehow related to the
>>> following output?
>>>
>>> $ pacmd list-sinks | egrep -i "state|suspend"
>>>         state: SUSPENDED
>>>         suspend cause: IDLE
>>>
>>> I noticed that when some app plays audio stream, the state becomes
>>> RUNNING. When the app stops playing, the state changes to IDLE, and
>>> about 5s later, it changes to the state that you can see above. This
>>> behavior is the same no matter what I set in the power_save option
>>> in the kernel module. I've tested 0, 1 and 10, and actually I didn't
>>> notice any difference.
>>>
>>> So, is the powersave mode enabled or not?
> 
>> I'm not familiar with the kenel module, so I can't answer most of your
>> questions. However, I can tell you that the PulseAudio sink state (IDLE
>> or SUSPENDED) is not the same thing as the kernel driver's power save
>> state. Based on your description, the driver enters the power save mode
>> 10 seconds after the PulseAudio sink state has changed to SUSPENDED
>> (suspending means that PulseAudio closes the alsa device).
> 
> 
> So it should work. Though I have no idea how to check the state of the
> soundcard.
> 

It looks like the powersave feature doesn't work for my device. According to
the following log:

$ cat /proc/asound/card0/codec\#0 | grep -i power
  Power states:  D0 D1 D2 D3 CLKSTOP EPSS
  Power: setting=D0, actual=D0

$ cat /proc/asound/card0/codec\#3 | grep -i power
  Power states:  D0 D3
  Power: setting=D0, actual=D0
  Power states:  D0 D3
  Power: setting=D0, actual=D0
  Power states:  D0 D3
  Power: setting=D0, actual=D0
  Power states:  D0 D3
  Power: setting=D0, actual=D0
  Power states:  D0 D3
  Power: setting=D0, actual=D0
  Power states:  D0 D3
  Power: setting=D0, actual=D0

there are power switches, but none of them switch after the period
set in /sys/module/snd_hda_intel/parameters/power_save . There's info at 
https://www.kernel.org/doc/Documentation/power/pci.txt that "The
implementation of the PCI PM Spec is optional for conventional PCI
devices", so apparently it's not supported here and that's why nothing
happens after 10s.
-----BEGIN PGP SIGNATURE-----

iQIcBAEBCgAGBQJWErv2AAoJEM0EaBB3G2Ug+QYP/jM1E6xrWSke0X85jKnfsNKG
8Ob7n7qkNIX5FthNzAKkoX+4p8G6U3EAu/HahW7OzdoYZnF7YhJLe9+IhMPhHCdR
ldpA0mPtS2j7CeqQfND8wtJb7peXND3P54RliOKyrC7Ip9gmiJNuDTDrG+x7Cnw1
xxCbXG3Fenz54gczDew86sZDdgb+HsGrOUO/IHLvyvP+P/i2/Xl2nVsU1/6mIvBB
H/ggr5sWfOpnodEfY2rKLIO35Hn/sM3sKgGGc1QEh8r8y6OSBZdeaUqX4Kvzy+YT
uYA1Qwxah+wHY/b+pF5gP8ldPTKmwHLeJ4QOcPX+fU4qJvMSd5hblhrlS4czs5rk
q03QsgqI+sXn+sHiPlMCLwTrs1sxQpKuRvV+/apE1k4pti7H8mD+qy8V2Lcu62Gw
P61GW9cg8ZRP+c6p3INlHKaOjZT7WpPqN5bwwgH2RssiZGIUMuuQrG0c7KMk1Szf
70szXpAdmd24+UEsWsi34+HzZUTalyw+Yh8eENN9yymI/Mg3Uh8fUEmDE2DDmhlc
G0VKTBks1KX1JbdWajm8yegVlwxRPRtfizfFStGh4BPtO7eJrSE0wjKZ2z/pHbKX
Q1SFcKHLcSGzar+F6N+LrJiTJEGde+ARZUsWb+VBDh2ryU/Ak0m9jbUJuvj/86lI
MREffMkqUVkpqeCuIrzy
=sdH2
-----END PGP SIGNATURE-----


More information about the pulseaudio-discuss mailing list