Differences between revisions 2 and 3
Revision 2 as of 2005-10-20 23:03:16
Size: 1870
Editor: MartinWilck
Comment:
Revision 3 as of 2005-10-21 02:31:10
Size: 2030
Editor: MartinWilck
Comment:
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:

The battery lifetime numbers Samsung publishes (6h) are marketing exaggerations. The normal battery in my notebook lasts about 2h when I'm working normally.

Power Management and ACPI

Most of this works out-of-the-box. [http://faq.pathfinderteam.org/index.php/Samsung_X20 this page on the Samsung X20 (in German)] has many good hints.

The battery lifetime numbers Samsung publishes (6h) are marketing exaggerations. The normal battery in my notebook lasts about 2h when I'm working normally.

There are several aspects to power management:

  1. React to "battery low" events by shutting down gracefully or suspending. acpid can do it (it works), but the actions must be written by hand.

  2. React to "critical temperature" events. Should be possible with acpid, too. Not tested.

  3. Do a graceful shutdown when the power button is pressed. OK with acpid.

  4. Carry out suspend-to-disk or suspend-to-RAM. Requires kernel recompilation on Debian. Not yet tested.
  5. Regulate the power consumption of different subsystems according to battery/AC state and computing demands to obtain maximum battery lifetime. This can be done in several ways.
    • The most powerful approach is using ACPI power states, but this is hardly implemented in Linux right now (2005).
    • "laptop-mode-tools" for regulating disk activity (unfortunately pointless with SATA, see ["../HDDandCDrom"])
    • CPU frequency control: There are many tools for this ([http://www.gentoo.de/doc/de/power-management-guide.xml see here for a comparison]). I opted for cpufrequtils because it's lightweight, easy to use in scripts, and powerful enough for my purposes. I am using the kernel "performance" governor with AC connected, the "ondemand" governor on battery, and the "powersave" governor in "etiquette mode".

      I put the following into /etc/modules to enable power control:

freq_table
speedstep_centrino
cpufreq_ondemand
cpufreq_powersave
  • cpufrequtils must be enabled by editing /etc/default/cpufrequtils. I call cpufreq-set upon acpid AC adapter events and etiquette mode keys (see ../InputDevices).