How to enable audio codec power saving

From ThinkWiki
Revision as of 01:44, 21 February 2007 by Ungoliant (Talk | contribs) (On-demand power control , confirms that X31 is supported with kernel version 2.6.20)
Jump to: navigation, search

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).