Lenovo ThinkPad X61T

From ArchWiki

(Redirected from Lenovo Thinkpad x61t SXGA+)
Jump to: navigation, search


Image:Tango-document-new.png This article is a stub.
It may be confusing, not contain enough information, or be a placeholder for an article to come. People are invited to expand it to full article status and remove this box.

Contents

[edit] Installation

As the x61t is a Core 2 Duo, i'm going to install Arch x86_64 on it.

[edit] Preparation of machine for linux installation

  • make backup of 1st primary partition if possible. this is the recovery tools from lenovo/ibm - do not remove it... with grub you can later set it to be accessible!
  • resize NTFS parition with MS Windows Vista or remove it completely from drive ... make space at the end of harddrive for archlinux (in my case 80gb harddrive 24gb linux / and /home)

[edit] No optical drive installation

As i do not have an optical drive and the x61t has no optical drive itself, the installation was done from an external usb-storage device (harddrive or usb-key).

[edit] Preparation of Installation medium

  • Requirements
    • packages: util-linux (provides cfdisk), syslinux, dosfstools (provides mkdosfs)
    • running archlinux on a machine to prepare installation medium
    • access to internet
  • use cfdisk to create a primary FAT16 Partition (type=0c) on the usb stick and make it bootable
  • use
mkdosfs /dev/sdXY

to create a file system on the partition and then mount it

mount -t msdos /dev/sdXY /media/installharddrive
  • download ArchLinux installation ISO base from internet and mount it locally:
mount -t iso9660 -o loop /path/to/ArchLinux.iso /media/iso
  • copy content from ISO to the installation harddrive:
cp -ra /media/iso/* /media/installharddrive

and copy isolinux files to root of partition:

cp /media/installharddrive/isolinux/* /media/installharddrive/

then rename isolinux.cfg to syslinux.cfg

mv /media/installharddrive/isolinux.cfg /media/installharddrive/syslinux.cfg 
  • unmount installation harddisk
  • install syslinux to partition
syslinux -s /dev/sdXY

[edit] Boot USB harddrive on thinkpad x61t

in BIOS select USB-HDD to be your booting device ==> installation harddrive will boot.

[edit] proceed with installation as you wish

see for details Official_Arch_Linux_Install_Guide

[edit] notes on installing the bootloader

As bootloader i have choosen grub. to be able to boot the MS windows paritition as well as the recovery partition of lenovo, i have specified the following sections for grub (/boot/grub/menu.lst):

# Arch Linux
title  Arch Linux
root   (hd0,2)
kernel /boot/vmlinuz26 root=/dev/sda3 ro vga=792 quiet
initrd /boot/kernel26.img
# Arch Linux emergency
title  Arch Linux Fallback
root   (hd0,2)
kernel /boot/vmlinuz26 root=/dev/sda3 ro
initrd /boot/kernel26-fallback.img
# booting "Rescue and Recovery" partition from Lenovo
title Thinkpad Maintenance
unhide (hd0,0)
rootnoverify (hd0,0)
chainloader +1
# Vista
title Thinkpad Windows Vista
hide (hd0,0)
rootnoverify (hd0,1)
chainloader +1

assuming that /dev/sda1 is rescue and recovery from lenovo /dev/sda2 is MS windows /dev/sda3 is archlinux

[edit] Specific Hardware Setup

[edit] Sound

works out of the box - following modules were loaded automatically

[damir@Apollon Arch]$ lsmod | grep snd
snd_seq_oss            32896  0
snd_seq_midi_event      7808  1 snd_seq_oss
snd_seq                55680  4 snd_seq_oss,snd_seq_midi_event
snd_seq_device          7956  2 snd_seq_oss,snd_seq
snd_hda_intel         347940  4
snd_pcm_oss            44576  0
snd_pcm                82568  3 snd_hda_intel,snd_pcm_oss
snd_timer              22536  3 snd_seq,snd_pcm
snd_page_alloc          8720  2 snd_hda_intel,snd_pcm
snd_mixer_oss          16896  1 snd_pcm_oss
snd                    57064  14          
snd_seq_oss,snd_seq,snd_seq_device,snd_hda_intel,snd_pcm_oss,snd_pcm,snd_timer,snd_mixer_oss
soundcore               7968  1 snd

[edit] Ethernet

works out of the box - autoloaded module: e1000

e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
e1000: eth0: e1000_watchdog: NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
e1000: eth0: e1000_watchdog: 10/100 speed: disabling TSO

[edit] Firewire

works out of the box

[edit] USB

works out of the box

[edit] Power Management

[edit] suspend machine

pm-suspend

works (keyboard, mouse, stylus, sound, network) with one detail: when in X, the display lamp is not turned on. workaround: ctrl-alt-f1 to switch to vesa frame buffer turns the lamp on and when switching back to ctrl-alt-f7 the X has then the lamp turned on as well. no idea why this happens.

[edit] Wireless network device

get packages

pacman -S iwlwifi iwlwifi-4965-ucode

arch loads the module

iwl4965

and wireless works fine

[edit] Xorg

  • works with xf86-video-intel
  • does NOT work with xf86-video-i810
  • generate xorg.conf with
X -configure

the xorg.conf i'm using can be found here Thinkpad x61t SXGA+ xorg.conf

[edit] Stylus

Is a wacom on serial. install

linuxwacom

then add to xorg.conf

       InputDevice     "stylus" "SendCoreEvents"
       InputDevice     "eraser" "SendCoreEvents"
       InputDevice     "cursor" "SendCoreEvents"

to ServerLayout

and

Section "InputDevice"
       Driver "wacom"
       Identifier "stylus"
       Option "Device" "/dev/ttyS0" # SERIAL ONLY
       Option "Type" "stylus"
       Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection
Section "InputDevice"
       Driver "wacom"
       Identifier "eraser"
       Option "Device" "/dev/ttyS0" # SERIAL ONLY
       Option "Type" "eraser"
       Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection
Section "InputDevice"
       Driver "wacom"
       Identifier "cursor"
       Option "Device" "/dev/ttyS0" # SERIAL ONLY
       Option "Type" "cursor"
       Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection

and it works. Xorg log tells a little bit more info:

(==) Wacom General ISDV4 tablet speed=9600 maxX=24576 maxY=18432 maxZ=255 resX=2540 resY=2540  tilt=disabled
(==) Wacom device "cursor" top X=0 top Y=0 bottom X=24576 bottom Y=18432
(==) Wacom device "eraser" top X=0 top Y=0 bottom X=24576 bottom Y=18432
(==) Wacom device "stylus" top X=0 top Y=0 bottom X=24576 bottom Y=18432

so this device has 255 sensitivity steps and has a resolution of 2540 x 2540 it tells you also that the screen size is 245.76 mm times 184.32 mm big. if in xorg.conf the DisplaySize is not set by X -configure, you can add the following line in the Monitor section:

DisplaySize       245   185 

this helps some apps to determine the resolution of your monitor ("dpi value") and set the sizes of objects or fonts right (e.g. in the 1:1 mode where something printed should equal something seen on the display)


AUTOMATIC ROTATION (added by bbs) -- for automatic rotation consider the script found here -- thanks to Luke -- this script works well.

please note you must update your handler.sh for the acpi events to properly call this script -- contact unk.nown [at] unix [dot] net -- if you have any questions

[edit] Trackpoint

To get the scroll on middle button + trackpoint to work (in all four directions), add these lines to your mouse section:

       Option          "EmulateWheel" "on"
       Option          "Emulate3Buttons" "on"
       Option          "EmulateWheelButton" "2"
       Option          "YAxisMapping" "4 5"
       Option          "XAxisMapping" "6 7"

[edit] SD card reader

sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci: SDHCI controller found at 0000:05:00.2 [1180:0822] (rev 21)

not yet tested

[edit] Fingerprint Reader

USB ID 0483:2016

Works fine with the ThinkFinger binary drivers version 0.3. i will include the thinkfinger pkg in [extra].

[edit] CPU Freqency Scaling

Install the package cpufrequtils, add cpufreq to DAEMONS, add acpi_cpufreq to MODULES in /etc/rc.conf and put these lines in your /etc/rc.local:

echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_max_freq > \ /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
cat /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_max_freq > \ /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq

This will enable ondemand frequency scaling on both cores.

[edit] to be continued

i'm working on this document - that's why it is marked still as stub!

Personal tools