1 |
62 |
marcus.erl |
Notes on Power-Saving Mode
|
2 |
|
|
==========================
|
3 |
|
|
|
4 |
|
|
AC97 and HD-audio drivers have the automatic power-saving mode.
|
5 |
|
|
This feature is enabled via Kconfig CONFIG_SND_AC97_POWER_SAVE
|
6 |
|
|
and CONFIG_SND_HDA_POWER_SAVE options, respectively.
|
7 |
|
|
|
8 |
|
|
With the automatic power-saving, the driver turns off the codec power
|
9 |
|
|
appropriately when no operation is required. When no applications use
|
10 |
|
|
the device and/or no analog loopback is set, the power disablement is
|
11 |
|
|
done fully or partially. It'll save a certain power consumption, thus
|
12 |
|
|
good for laptops (even for desktops).
|
13 |
|
|
|
14 |
|
|
The time-out for automatic power-off can be specified via power_save
|
15 |
|
|
module option of snd-ac97-codec and snd-hda-intel modules. Specify
|
16 |
|
|
the time-out value in seconds. 0 means to disable the automatic
|
17 |
|
|
power-saving. The default value of timeout is given via
|
18 |
|
|
CONFIG_SND_AC97_POWER_SAVE_DEFAULT and
|
19 |
|
|
CONFIG_SND_HDA_POWER_SAVE_DEFAULT Kconfig options. Setting this to 1
|
20 |
|
|
(the minimum value) isn't recommended because many applications try to
|
21 |
|
|
reopen the device frequently. 10 would be a good choice for normal
|
22 |
|
|
operations.
|
23 |
|
|
|
24 |
|
|
The power_save option is exported as writable. This means you can
|
25 |
|
|
adjust the value via sysfs on the fly. For example, to turn on the
|
26 |
|
|
automatic power-save mode with 10 seconds, write to
|
27 |
|
|
/sys/modules/snd_ac97_codec/parameters/power_save (usually as root):
|
28 |
|
|
|
29 |
|
|
# echo 10 > /sys/modules/snd_ac97_codec/parameters/power_save
|
30 |
|
|
|
31 |
|
|
|
32 |
|
|
Note that you might hear click noise/pop when changing the power
|
33 |
|
|
state. Also, it often takes certain time to wake up from the
|
34 |
|
|
power-down to the active state. These are often hardly to fix, so
|
35 |
|
|
don't report extra bug reports unless you have a fix patch ;-)
|
36 |
|
|
|
37 |
|
|
For HD-audio interface, there is another module option,
|
38 |
|
|
power_save_controller. This enables/disables the power-save mode of
|
39 |
|
|
the controller side. Setting this on may reduce a bit more power
|
40 |
|
|
consumption, but might result in longer wake-up time and click noise.
|
41 |
|
|
Try to turn it off when you experience such a thing too often.
|