Difference between revisions of "How to enable audio codec power saving"
(→On-demand power control: add link to 2.6.19-rc3 ac97 powersave fix) |
(→On-demand power control , confirms that X31 is supported with kernel version 2.6.20) |
||
Line 6: | Line 6: | ||
==On-demand power control== | ==On-demand power control== | ||
There's an [http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git;a=commitdiff_plain;h=6dbe662874ba08585eaf732d126762c25ac8e3f7;hp=2b29b13c5794f648cd5e839796496704d787f5a6 experimental patch from 2.6.19-rc2], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff_plain;h=da43deb116c0cea9ca2174f2ac64985c4d53077e;hp=dbedca39fe30db87b6401e4396f959c63d90082e that was later corrected in 2.6.19-rc3], which enables the support of aggressive AC97 power-saving mode in the Linux [[ALSA]] drivers. In this mode, the AC97 powerdown register bits are dynamically controlled at each open/close of PCM streams. To allow powering off the analog mixer, make sure all analog inputs (Line, Microphone, CD, etc.) are muted. | There's an [http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git;a=commitdiff_plain;h=6dbe662874ba08585eaf732d126762c25ac8e3f7;hp=2b29b13c5794f648cd5e839796496704d787f5a6 experimental patch from 2.6.19-rc2], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff_plain;h=da43deb116c0cea9ca2174f2ac64985c4d53077e;hp=dbedca39fe30db87b6401e4396f959c63d90082e that was later corrected in 2.6.19-rc3], which enables the support of aggressive AC97 power-saving mode in the Linux [[ALSA]] drivers. In this mode, the AC97 powerdown register bits are dynamically controlled at each open/close of PCM streams. To allow powering off the analog mixer, make sure all analog inputs (Line, Microphone, CD, etc.) are muted. | ||
+ | |||
+ | It is working without a hitch in an IBM X31 with kernel 2.6.20. | ||
The mode is disabled by default, and activated via <tt>power_save=1</tt> option for <tt>snd-ac97-codec</tt> driver (at run time, use {{cmdroot|echo Y > /sys/module/snd_ac97_codec/parameters/power_save}}). | The mode is disabled by default, and activated via <tt>power_save=1</tt> option for <tt>snd-ac97-codec</tt> driver (at run time, use {{cmdroot|echo Y > /sys/module/snd_ac97_codec/parameters/power_save}}). | ||
You may hear a faint click each time the device is powered up (at start of playback) and each time the device is powered down (2 seconds after playback ends). | You may hear a faint click each time the device is powered up (at start of playback) and each time the device is powered down (2 seconds after playback ends). |
Revision as of 01:44, 21 February 2007
The AC97 sound device (e.g., AD1981B) requires a noticable amount of power (0.3W on T43). This power can be saved when the device is not in use.
Disabling the device
Disable the sound device by unloading modules or # echo -n 3 > /sys/class/sound/controlC0/device/power/state
(replace 3 by 0 to enable again).
On-demand power control
There's an experimental patch from 2.6.19-rc2, that was later corrected in 2.6.19-rc3, which enables the support of aggressive AC97 power-saving mode in the Linux ALSA drivers. In this mode, the AC97 powerdown register bits are dynamically controlled at each open/close of PCM streams. To allow powering off the analog mixer, make sure all analog inputs (Line, Microphone, CD, etc.) are muted.
It is working without a hitch in an IBM X31 with kernel 2.6.20.
The mode is disabled by default, and activated via power_save=1 option for snd-ac97-codec driver (at run time, use # echo Y > /sys/module/snd_ac97_codec/parameters/power_save
).
You may hear a faint click each time the device is powered up (at start of playback) and each time the device is powered down (2 seconds after playback ends).