Difference between revisions of "TLP"

From ArchWiki
Jump to: navigation, search
(Start)
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
[[Category:Power management]]
 
[[Category:Power management]]
'''TLP''' is a set of scripts that bring you the benefits of advanced power management for Linux without the need to understand every technical detail. The default configuration provides optimized power saving out of the box.  
+
'''TLP''' is an advanced power management tool for Linux. It is a pure command line tool with
 +
automated background tasks and does not contain a GUI.  
  
It was originally written by linrunner for Ubuntu. {{aur|tlp}} is available in the AUR.
+
TLP is available in the AUR: {{aur|tlp}}, {{aur|tlp-rdw}}.  
+
Settings depending on the power source ac/bat:
+
* Kernel laptop mode, dirty buffer params and file system commit timeout
+
* Power aware process scheduler for multi-core/multi-threading
+
* Hard disk advanced power magement level (per disk)
+
* SATA aggressive link power management (ALPM)
+
* PCI Express active state power management (PCIe ASPM) - Kernel 2.6.35 and above
+
* Runtime power management for pci/spi/i2c bus devices - Kernel 2.6.35 and above
+
* Radeon graphics KMS power management - Kernel 2.6.35 and above, not fglrx
+
* Wifi power saving mode -  depending on kernel/driver
+
* Power off optical drive in drive bay (on battery)
+
  
Additional functions:
+
== Features ==
* Hard disk spin down timeout and I/O scheduler (per disk)
+
Read the the full documentation at the [http://linrunner.de/tlp project homepage].
* USB autosuspend with blacklist
+
* Audio power saving mode - hda_intel, ac97
+
* Disable Wifi, bluetooth or WWAN devices upon system startup and shutdown
+
* Disable Wake On LAN
+
* WWAN state is restored after suspend/hibernate
+
* Untervolting of Intel processors - requires kernel with PHC-Patch
+
* Battery charge thresholds - ThinkPads only
+
* Recalibrate battery - ThinkPads only
+
  
 
== Installation ==
 
== Installation ==
Just install it from the [https://aur.archlinux.org/packages.php?ID=48464l AUR].  
+
Install the following packages plus dependencies:
 +
* [https://aur.archlinux.org/packages/tlp/ tlp] (AUR) – Power saving
 +
* [https://aur.archlinux.org/packages/tlp-rdw/ tlp-rdw] (AUR) – optional, Radio Device Wizard
 +
* [[Tp_smapi|tp_smapi]] (Community) – optional ''ThinkPad only'', tp-smapi is needed for battery charge thresholds and ThinkPad specific status output of tlp-stat
 +
* [https://aur.archlinux.org/packages/dkms-acpi_call-git/ dkms-acpi_call-git] (AUR) – optional ''ThinkPad only'', acpi_call is needed for battery charge thresholds on Sandy Bridge and newer models (X220/T420, X230/T430 et al.)
 +
 
 +
== Start ==
 
After successful installation, you can start TLP by typing ''as root/with sudo'':
 
After successful installation, you can start TLP by typing ''as root/with sudo'':
 
  tlp start
 
  tlp start
To start TLP as a daemon, add '''tlp''' to the DAEMONS section in {{ic|/etc/rc.conf}}
+
 
DAEMONS=( ... '''tlp''' ...)
+
To run TLP automatically upon system startup, enable the service via:
 +
  systemctl enable tlp.service
 +
 
 +
'''Hint:''' the above step is also necessary when upgrading to 0.3.8.1 because the service name changed.
  
 
== Configuration ==
 
== Configuration ==
The config-file is located at {{ic|/etc/default/tlp}}. A full list of options is documented here: [https://github.com/linrunner/TLP/wiki/TLP-Configuration TLP Configuration]. To make use of the battery-related options, install and configure [[Tp_smapi]].  
+
The config file is located at {{ic|/etc/default/tlp}}.  
 +
 
 +
The default configuration provides optimized power saving out of the box. For a full list of options see: [http://linrunner.de/en/tlp/docs/tlp-configuration.html TLP Configuration].  
 +
 
 +
To make use of the ThinkPad-specific battery options, install and configure [[Tp_smapi|tp_smapi]] and/or [https://aur.archlinux.org/packages/dkms-acpi_call-git/ acpi_call] (see [[TLP#Installation|Installation]]).  
  
 
== Kernel 2.6.39 ==
 
== Kernel 2.6.39 ==
Line 41: Line 36:
 
You can use PCIe ASPM settings by starting the kernel with
 
You can use PCIe ASPM settings by starting the kernel with
 
  pcie_aspm=force
 
  pcie_aspm=force
== Wi-Fi ==
 
Some Intel Wi-Fi cards require to set their powersaving options '''after''' establishing connection. Therefore the original version of TLP adds a script to {{ic|/etc/network/if-up.d/}}, which itself calls (''as root'')
 
tlp wifi $IFACE
 
where '''$IFACE''' is the current Interface (e.g. wlan0). In Arch Linux, there is no such possibility by default. If you own a wifi card, which is not supported out of the box, please use the post-up methods of your preferred networking manager (like [[netcfg]] oder [[NetworkManager]]).
 
If TLP sets the powersaving options properly on ac-state changed, you do not need to change anything. Check this, by issuing the following command twice, before and after unplugging your ac adapter:
 
iwconfig | grep "Power Management"
 
 
=== NetworkManager ===
 
linrunner has created a little script for NetworkManager , which sets the the Powersaving options. It should be located in {{ic|/etc/NetworkManager/dispatcher.d/02_tlp-ifup}}. Again, if everything is working ok, you do not need to add this script!
 
 
#!/bin/sh
 
# tlp - ifup hook
 
[ -n "$1" ] || exit 0
 
 
IWC=iwconfig
 
TLP=/usr/sbin/tlp
 
[ -x $TLP ] || exit 0
 
 
IFACE="$1"
 
case "$2" in
 
    up)
 
        if [ -z $($IWC $IFACE 2>&1 | grep "no wireless extensions") ]; then
 
            # interface is wifi
 
            $TLP wifi $IFACE
 
        elif [ "${IFACE#usb}" != "$IFACE" -o "${IFACE#hso}" != "$IFACE" -o "${IFACE#ppp}" != "$IFACE" ]; then
 
            # interface is (probably) wwan
 
            $TLP usb
 
        fi
 
        ;;
 
       
 
    *) # do nothing
 
        ;;
 
esac
 
exit 0
 
 
=== netcfg ===
 
Just add
 
POST_UP=tlp wifi $INTERFACE
 
to the config-file.
 
  
 
== External Links ==
 
== External Links ==
* [https://github.com/linrunner/TLP/wiki/TLP-Linux-Advanced-Power-Management TLP Documentation]
+
* [http://linrunner.de/tlp TLP - Linux Advanced Power Management] - Project homepage & documentation
* [https://github.com/linrunner/TLP/wiki/TLP-Configuration TLP Configuration] - Settings
+
* [https://github.com/linrunner/TLP/blob/master/debian/changelog TLP Changelog]
+
* [https://github.com/linrunner/TLP/wiki/TLP-Developer-Documentation TLP Developer Documentation]
+
* [http://thinkpad-wiki.org/TLP_-_Linux_Stromsparen TLP - Linux Stromsparen] – Dokumentation in deutsch
+

Revision as of 11:41, 13 April 2013

TLP is an advanced power management tool for Linux. It is a pure command line tool with automated background tasks and does not contain a GUI.

TLP is available in the AUR: tlpAUR, tlp-rdwAUR.

Features

Read the the full documentation at the project homepage.

Installation

Install the following packages plus dependencies:

  • tlp (AUR) – Power saving
  • tlp-rdw (AUR) – optional, Radio Device Wizard
  • tp_smapi (Community) – optional ThinkPad only, tp-smapi is needed for battery charge thresholds and ThinkPad specific status output of tlp-stat
  • dkms-acpi_call-git (AUR) – optional ThinkPad only, acpi_call is needed for battery charge thresholds on Sandy Bridge and newer models (X220/T420, X230/T430 et al.)

Start

After successful installation, you can start TLP by typing as root/with sudo:

tlp start

To run TLP automatically upon system startup, enable the service via:

 systemctl enable tlp.service

Hint: the above step is also necessary when upgrading to 0.3.8.1 because the service name changed.

Configuration

The config file is located at /etc/default/tlp.

The default configuration provides optimized power saving out of the box. For a full list of options see: TLP Configuration.

To make use of the ThinkPad-specific battery options, install and configure tp_smapi and/or acpi_call (see Installation).

Kernel 2.6.39

According to this thread, the kernel 2.6.39 does not allow user-settings to

/sys/module/pcie_aspm/parameters/policy

You can use PCIe ASPM settings by starting the kernel with

pcie_aspm=force

External Links