Difference between revisions of "IBM ThinkPad X41"

From ArchWiki
Jump to: navigation, search
m (PHC)
m (PHC)
(11 intermediate revisions by the same user not shown)
Line 8: Line 8:
 
This article contains some useful tweaks to make the most of your machine, the
 
This article contains some useful tweaks to make the most of your machine, the
 
tweaks are mainly powersaving biased. With vanilla Arch, around 3 hours battery
 
tweaks are mainly powersaving biased. With vanilla Arch, around 3 hours battery
life was achieved, following powersaving tweaks were applied more than 5 hours
+
life was achieved, following powersaving tweaks a bit over than 5 hours
was achieved, this was with second highest screen brightness.
+
was achieved, this was performed with screen brightness at the second highest
 +
value.
 +
==Installation==
 +
Grab the .iso file from [https://www.archlinux.org/download/ Arch Download], write this to a memory stick {{bc |<nowiki> sudo dd if=archlinux-201x.xx.xx-dual.iso of=/dev/sdX bs=4M</nowiki>}}Restart the computer and boot into it like any other Arch installation.
  
 
==Useful packages==  
 
==Useful packages==  
Line 22: Line 25:
 
The IBM X41 comes with a ipw2915 wireless Centrino (A, B and G) or ipw2200
 
The IBM X41 comes with a ipw2915 wireless Centrino (A, B and G) or ipw2200
 
wireless Centrino (B and G) module, the {{Pkg|ipw2200}} module provides support
 
wireless Centrino (B and G) module, the {{Pkg|ipw2200}} module provides support
for these too devices. {{Pkg|netctl}} has been tested and works flawlessly with
+
for these two devices. {{Pkg|netctl}} has been tested and works flawlessly with
the ipw2915
+
the ipw2915.
  
 
===Applications===
 
===Applications===
 
* {{Pkg|powertop}} - Measure power usage.
 
* {{Pkg|powertop}} - Measure power usage.
 
* {{Pkg|cellwriter}} - (X41t) on-screen tablet keyboard.
 
* {{Pkg|cellwriter}} - (X41t) on-screen tablet keyboard.
* {{AUR|thinkfan}} - Control the utilisation of the fan.
+
{{Note|Thinkfan seems to fail due to thinkpad_acpi not having a fan_control function}}
 +
* {{AUR|thinkfan}} - Control the utilisation of the fan.  
 
* {{Pkg|gpm}} - Linux console mouse server.
 
* {{Pkg|gpm}} - Linux console mouse server.
  
 
==General Tweaks==
 
==General Tweaks==
 
===Scrolling with trackpoint===
 
===Scrolling with trackpoint===
The following file can be installed for Xorg to support middle mouse button and
+
The following file can be added for trackpoint scrolling support in X.
trackpoint scrolling.
+
 
{{hc|/etc/X11/xorg.conf.d/10-trackpoint.conf|
 
{{hc|/etc/X11/xorg.conf.d/10-trackpoint.conf|
 
<nowiki>
 
<nowiki>
Line 52: Line 55:
 
(this can be monitored using {{Pkg|powertop}}, it also provides suggestions for
 
(this can be monitored using {{Pkg|powertop}}, it also provides suggestions for
 
reducing power consumption). Here are some modifications that I found
 
reducing power consumption). Here are some modifications that I found
considerable improved the battery life of the X41t.
+
considerable improved the battery life of the X41t.  
  
 
===laptop-mode (kernel)===
 
===laptop-mode (kernel)===
Line 58: Line 61:
 
utilisation of your HDD therefore saving a considerable amount of power. The
 
utilisation of your HDD therefore saving a considerable amount of power. The
 
effect with SSDs is less pronounced, but still saves some power.
 
effect with SSDs is less pronounced, but still saves some power.
{{bc|<nowiki>echo "vm.laptop_mode=5" | sudo tee /etc/sysctl.conf/laptop_mode.conf"</nowiki>}}
+
{{bc|<nowiki>echo "vm.laptop_mode=5" | sudo tee /etc/sysctl.d/laptop_mode.conf</nowiki>}}
  
 
===SATA-ALPM (pm-utils)===
 
===SATA-ALPM (pm-utils)===
Line 68: Line 71:
 
===Powersaving on PCI devices===
 
===Powersaving on PCI devices===
 
Powersaving isn't automatically enabled on devices as sometimes it causes
 
Powersaving isn't automatically enabled on devices as sometimes it causes
issues, this saved me about 3W.
+
issues, this can save about 2W.
 
{{hc|/etc/udev/rules.d/pci_powersaving.rules|<nowiki>
 
{{hc|/etc/udev/rules.d/pci_powersaving.rules|<nowiki>
 
ACTION=="add", SUBSYSTEM=="pci", ATTR{power/control}="auto"</nowiki>}}
 
ACTION=="add", SUBSYSTEM=="pci", ATTR{power/control}="auto"</nowiki>}}
Line 87: Line 90:
 
default. It is useless for normal operation and significantly increases the
 
default. It is useless for normal operation and significantly increases the
 
number of CPU wakeups/second.  
 
number of CPU wakeups/second.  
{{bc|<nowiki>echo "kernel.nmi_watchdog=0" | sudo tee /etc/sysctl.conf/nmi_watchdog.conf
+
{{bc|<nowiki>echo "kernel.nmi_watchdog=0" | sudo tee /etc/sysctl.d/nmi_watchdog.conf
 
</nowiki>}}
 
</nowiki>}}
  
Line 93: Line 96:
 
PHC - Processor Hardware Control. {{AUR|intel-phc}} supports the Mobile Centrino
 
PHC - Processor Hardware Control. {{AUR|intel-phc}} supports the Mobile Centrino
 
line of processors and hence the X41, this program allows you to undervolt your
 
line of processors and hence the X41, this program allows you to undervolt your
CPU.  
+
CPU. Undervolting reduces the voltage(V) the processor runs at, because P=IV this will reduce your power consumption, this has no effect on performance, any excess voltage will be dissipated as heat, your laptop will run cooler and the fan will activate less frequently.
 
{{bc|
 
{{bc|
$ yaourt -S intel-phc
+
$ yaourt -S phc-intel
 
$ phc-intel setup # To install drivers
 
$ phc-intel setup # To install drivers
 
$ yaourt -S linux-phc-optimize
 
$ yaourt -S linux-phc-optimize
$ sudo linux-phc-optimize # Repeat this each time the laptop crashes until you've got a full set of parameters
+
$ sudo linux-phc-optimize # Repeat this each time the laptop crashes until you've got a full set of parameters, this is 9 times
 
}}
 
}}
  
Line 107: Line 110:
 
<nowiki> VIDS="17 15 13 11 9 7 5 4 4" </nowiki> }}
 
<nowiki> VIDS="17 15 13 11 9 7 5 4 4" </nowiki> }}
  
You can check that this is enabled on your next reboot by {[ic|sudo intel-phc
+
You can check that this is enabled on your next reboot by {{ic|sudo intel-phc
 
status}}
 
status}}
  
Line 113: Line 116:
 
The X41t utilises a Wacom digitiser for input, {{ic|pacman -S xf86-input-wacom}}
 
The X41t utilises a Wacom digitiser for input, {{ic|pacman -S xf86-input-wacom}}
 
provides support for it. Once installed the driver should be activated following
 
provides support for it. Once installed the driver should be activated following
the next reboot or {{ic|modprobe xf86-input-wacom}}.
+
the next reboot.
 
+
  
 
= External links =
 
= External links =
  
 
* This report has been listed in the [http://tuxmobil.org/ibm.html Linux Laptop and Notebook Installation Survey: IBM].  
 
* This report has been listed in the [http://tuxmobil.org/ibm.html Linux Laptop and Notebook Installation Survey: IBM].  
* SATA support modification: [http://www.placaware.com/?page_id=120]
+
* [http://www.placaware.com/?page_id=120 SATA support modification]
 
* [http://www.thinkwiki.org/wiki/Category:X41 ThinkWiki X41 page]
 
* [http://www.thinkwiki.org/wiki/Category:X41 ThinkWiki X41 page]
 +
* [http://linuxfocus.org/~guido/gentoo-tpt43p/cooling/ T43p Cooling - applicable to X41t], I've added ~1mm thick copper sheet to both the CPU and northbridge heatsinks with no ill effects.

Revision as of 15:50, 1 May 2013

The X41 and X41t (tablet) are both SATA-based machines that include a SATA-PATA bridge allowing the use of PATA HDDs, see external links for modifications to use SATA HDDs and SSDs. The laptops utilise a Pentium M processor (either 1.5GHz or 1.6GHz), the Linux-ck packages contain optimised packages for this architecture.

This article contains some useful tweaks to make the most of your machine, the tweaks are mainly powersaving biased. With vanilla Arch, around 3 hours battery life was achieved, following powersaving tweaks a bit over than 5 hours was achieved, this was performed with screen brightness at the second highest value.

Installation

Grab the .iso file from Arch Download, write this to a memory stick
 sudo dd if=archlinux-201x.xx.xx-dual.iso of=/dev/sdX bs=4M
Restart the computer and boot into it like any other Arch installation.

Useful packages

Some useful packages for your IBM/Lenovo ThinkPad X41:

System Packages

  • acpi - provides /proc/acpi, interesting things like lid state, temperatures, volume, brightness etc.
  • xf86-input-wacom - Driver supporting Wacom tablet screen.
  • xf86-video-intel - Xorg driver for the Intel 915GM graphics chip.
  • tp_smapi - Adds support for SMAPI functions (battery discharge control, battery information, hdaps acceloremeter support).
  • thinkfinger - Driver for fingerprint reader.

The IBM X41 comes with a ipw2915 wireless Centrino (A, B and G) or ipw2200 wireless Centrino (B and G) module, the ipw2200 module provides support for these two devices. netctl has been tested and works flawlessly with the ipw2915.

Applications

Note: Thinkfan seems to fail due to thinkpad_acpi not having a fan_control function
  • thinkfanAUR - Control the utilisation of the fan.
  • gpm - Linux console mouse server.

General Tweaks

Scrolling with trackpoint

The following file can be added for trackpoint scrolling support in X.

/etc/X11/xorg.conf.d/10-trackpoint.conf

Section "InputClass"
        Identifier      "Trackpoint Wheel Emulation"
        MatchProduct    "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device"
        MatchDevicePath "/dev/input/event*"
        Option          "EmulateWheel"          "true"
        Option          "EmulateWheelButton"    "2"
        Option          "Emulate3Buttons"       "false"
        Option          "XAxisMapping"          "6 7"
        Option          "YAxisMapping"          "4 5"
EndSection

Taken from Xorg#Example: Wheel emulation (for a Trackpoint)

Powersaving tweaks

Initially without any powersaving tweaks, the X41 uses quite a lot of power (this can be monitored using powertop, it also provides suggestions for reducing power consumption). Here are some modifications that I found considerable improved the battery life of the X41t.

laptop-mode (kernel)

Laptop mode is included in the kernel, it buffers disk activities to reduce utilisation of your HDD therefore saving a considerable amount of power. The effect with SSDs is less pronounced, but still saves some power.

echo "vm.laptop_mode=5" | sudo tee /etc/sysctl.d/laptop_mode.conf

SATA-ALPM (pm-utils)

ALPM - Aggressive Link Power Management allows the SATA host bus adapter to enter a low power state when inactive therefore reducing power consumption.

echo "SATA_ALPM_ENABLE=true" | sudo tee /etc/pm/config.d/sata_alpm
sudo chmod +x /etc/pm/config.d/sata_alpm

Powersaving on PCI devices

Powersaving isn't automatically enabled on devices as sometimes it causes issues, this can save about 2W.

/etc/udev/rules.d/pci_powersaving.rules
ACTION=="add", SUBSYSTEM=="pci", ATTR{power/control}="auto"

i915 RC6 powersaving

The i915 chipset supports a variety of powersaving features, checkout modinfo i915 \| grep -i power for all options. The following are a good set to enable.

/etc/modprobe.d/i915.conf
options i915 i915_enable_rc6=7 i915_enable_fbc=1 lvds_downclock=1 

RC6 is a powersaving protocol, 7 enables RC6, deep RC6 and deepest RC6 (refer to Power Management#Enable RC6 Power Save Options for more information). i915_enable_fbc=1 enables framebuffer compression reducing the time taken to update the screen. lvds_downclock=1 lowers the clockrate of the screen.

Disable NMI watchdog

The NMI watchdog is a debugging feature of the linux kernel that is enabled by default. It is useless for normal operation and significantly increases the number of CPU wakeups/second.

echo "kernel.nmi_watchdog=0" | sudo tee /etc/sysctl.d/nmi_watchdog.conf

PHC

PHC - Processor Hardware Control. intel-phcAUR supports the Mobile Centrino line of processors and hence the X41, this program allows you to undervolt your CPU. Undervolting reduces the voltage(V) the processor runs at, because P=IV this will reduce your power consumption, this has no effect on performance, any excess voltage will be dissipated as heat, your laptop will run cooler and the fan will activate less frequently.

$ yaourt -S phc-intel
$ phc-intel setup # To install drivers
$ yaourt -S linux-phc-optimize
$ sudo linux-phc-optimize # Repeat this each time the laptop crashes until you've got a full set of parameters, this is 9 times

Once you have established stable VIDs, adding them to system startup can be accomplished modifying the intel-phc configuration file. If it doesn't exist, create it

/etc/phc-intel.conf
 VIDS="17 15 13 11 9 7 5 4 4"  

You can check that this is enabled on your next reboot by sudo intel-phc status

Tablet support

The X41t utilises a Wacom digitiser for input, pacman -S xf86-input-wacom provides support for it. Once installed the driver should be activated following the next reboot.

External links