Difference between revisions of "TLP"

From ArchWiki
Jump to: navigation, search
m (moved Tlp to TLP: upper-case letters)
Line 17: Line 17:
  
 
== Configuration ==
 
== Configuration ==
The config-file is located at {{Filename|/etc/default/tlp}}. To make use of the battery-charging option, install and configure [[Tp_smapi]].
+
The config-file is located at {{Filename|/etc/default/tlp}}. A full list of options is documented here: [http://thinkpad-wiki.org/TLP_-_Stromspareinstellungen_fuer_Ubuntu www.thinkpad-wiki.org] (currently only in German language). To make use of the battery-charging option, install and configure [[Tp_smapi]].
A full list of Options is documented here: [http://thinkpad-wiki.org/TLP_-_Stromspareinstellungen_fuer_Ubuntu www.thinkpad-wiki.org] (currently only in German language)
+
  
== Wifi ==
+
== Wi-Fi ==
Some intel wifi cards require to set their powersaving options '''after''' establishing connection. Therefore the original version of TLP adds a script to {{Filename|/etc/network/if-up.d/}}, which itself calls (''as root'')
+
Some Intel Wi-Fi cards require to set their powersaving options '''after''' establishing connection. Therefore the original version of TLP adds a script to {{Filename|/etc/network/if-up.d/}}, which itself calls (''as root'')
 
  tlp wifi $IFACE
 
  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]]).
 
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:
 
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"
 
  iwconfig | grep "Power Management"
 +
 +
=== NetworkManager ===
 +
Linrunner has created a little script for NetworkManager , which sets the the Powersaving options. It should be located in {{Filename|/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 ==
 
* TLP Documentaion at [http://thinkpad-wiki.org/TLP_-_Stromspareinstellungen_fuer_Ubuntu thinkpad-wiki.org] (in German)
 
* TLP Documentaion at [http://thinkpad-wiki.org/TLP_-_Stromspareinstellungen_fuer_Ubuntu thinkpad-wiki.org] (in German)
 
* TLP Developer Documentation at [http://thinkpad-wiki.org/TLP_Programmdokumentation thinkpad-wiki.org] (in German)
 
* TLP Developer Documentation at [http://thinkpad-wiki.org/TLP_Programmdokumentation thinkpad-wiki.org] (in German)

Revision as of 11:41, 3 May 2011

TLP is set of powersaving-scripts for Lenovo/IBM ThinkPads (c), which handle powersaving options according to the current power source. It was originally written by linrunner for Ubuntu. A port is available at the AUR. Although it is written for ThinkPads, it should work on other laptops as well, but without ThinkPad specific functions. Some features are:

  • Kernel-Laptop-Mode and timouts for writeback of the filesystembuffer to hard disk
  • Advanced Power Management Level per hard disk
  • I/O scheduler per hard disk
  • SATA Aggressive Link Power Management (ALPM)
  • Wifi powersaving mode for wifi-cards with iwlagn driver
  • battery-charging thresholds on some ThinkPads with (optionally) tp_smapi
  • and some more...

Installation

Just install it from the AUR. After successful installation, you can start TLP by typing as root/with sudo:

tlp start

To start TLP as a daemon, add tlp to the DAEMONS section in Template:Filename

DAEMONS=( ... tlp ...)

Configuration

The config-file is located at Template:Filename. A full list of options is documented here: www.thinkpad-wiki.org (currently only in German language). To make use of the battery-charging option, install and configure Tp_smapi.

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 Template:Filename, 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 Template:Filename. 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