IBM/Lenovo ThinkPad X41¶
A few notes on using Debian GNU/Linux (and Ubuntu).
Hardware¶
update-pciids && lspci:
00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03) 00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03) 00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03) 00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03) 00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03) 00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03) 00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03) 00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03) 00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3) 00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03) 00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03) 00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03) 00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03) 00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03) 02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5751M Gigabit Ethernet PCI Express (rev 11) 04:00.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev 8d) 04:00.1 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 13) 04:02.0 Ethernet controller: Atheros Communications, Inc. AR5212 802.11abg NIC (rev 01)
update-usbids && lsusb:
Bus 005 Device 001: ID 0000:0000 Bus 004 Device 003: ID 0a5c:201e Broadcom Corp. Bus 004 Device 002: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000
Keyboard¶
In KDE: Keyboard model = IBM Thinkpad 560Z/600/600E/A22E, Intl.
In ~/.Xmodmap:
! from http://stefan.desire.ch/howto/x41debian/ keycode 77 = Num_Lock keycode 233 = XF86Forward keycode 234 = XF86Back ! from the Internet: use right control key as Windoze-Key remove Control = Control_R keycode 109 = Super_R
And in ~/.Xsession:
#!/bin/sh xmodmap ~/.Xmodmap
For some unknow reason, kdm/KDE does not execute ~/.Xsession, therefore:
cd ~/.kde/Autostart && ln -s ~/.Xsession dot.Xsession
I use the Super_R key (a.k.a. Windoze key) amongst other things as follows (see KDE Keyboard Shortcuts):
- Win-X = Maximise window
- Win-H = Maxmimise horizontally
- Win-V = Maxmimise vertically
- Win-Z = Minimise window
Real men don’t click..
See also:
- http://www.paganini.net/index.cgi/linux/nocaps.html
- http://www.in-ulm.de/~mascheck/X11/xmodmap.html
- xkeycaps(1), xmodmap(1)
X11 (xorg)¶
In /etc/X11/xorg.conf:
# /etc/X11/xorg.conf (xorg X Window System server configuration file) # # handgestrickt & mundgeblasen Section "Files" FontPath "/usr/share/fonts/X11/misc" FontPath "/usr/X11R6/lib/X11/fonts/misc" FontPath "/usr/share/fonts/X11/cyrillic" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic" FontPath "/usr/share/fonts/X11/100dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/share/fonts/X11/75dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/share/fonts/X11/Type1" FontPath "/usr/X11R6/lib/X11/fonts/Type1" FontPath "/usr/share/fonts/X11/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/100dpi" FontPath "/usr/share/fonts/X11/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/75dpi" # path to defoma fonts FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" EndSection Section "Module" Load "bitmap" Load "dbe" Load "ddc" Load "dri" Load "extmod" Load "freetype" Load "glx" Load "int10" Load "record" Load "type1" Load "vbe" Load "i2c" EndSection Section "InputDevice" Identifier "klavier" Driver "kbd" Option "CoreKeyboard" Option "XkbRules" "xorg" Option "XkbModel" "pc105" Option "XkbLayout" "ch" Option "XkbVariant" "de" EndSection Section "InputDevice" Identifier "nippel" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" #Option "Protocol" "ImPS/2" #Option "Emulate3Buttons" "true" Option "Protocol" "ExplorerPS/2" Option "Emulate3Buttons" "on" Option "Emulate3TimeOut" "50" Option "EmulateWheel" "on" Option "EmulateWheelTimeOut" "200" Option "EmulateWheelButton" "2" Option "YAxisMapping" "4 5" Option "XAxisMapping" "6 7" Option "ZAxisMapping" "4 5" EndSection Section "Device" Identifier "grafiktschipp" Driver "i810" BusID "PCI:0:2:0" VideoRam 131072 EndSection Section "Monitor" Identifier "bildschirm" Option "DPMS" HorizSync 28-49 VertRefresh 43-72 DisplaySize 245 184 EndSection Section "Screen" Identifier "leinwand" Device "grafiktschipp" Monitor "bildschirm" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1024x768" "800x600" "648x480" EndSubSection SubSection "Display" Depth 4 Modes "1024x768" "800x600" "648x480" EndSubSection SubSection "Display" Depth 8 Modes "1024x768" "800x600" "648x480" EndSubSection SubSection "Display" Depth 15 Modes "1024x768" "800x600" "648x480" EndSubSection SubSection "Display" Depth 16 Modes "1024x768" "800x600" "648x480" EndSubSection SubSection "Display" Depth 24 Modes "1024x768" "800x600" "648x480" EndSubSection EndSection Section "ServerLayout" Identifier "layout" Screen "leinwand" InputDevice "klavier" InputDevice "nippel" EndSection Section "DRI" Mode 0666 EndSection Section "Extensions" Option "Composite" "Enable" EndSection # eof
See also:
- http://opseast.wordpress.com/2007/11/05/getting-the-thinkpad-scroll-button-to-work-in-linux/
- http://www.mozilla.org/unix/dpi.html
3d Acceleration¶
If you want 3d acceleration working well (e.g. for Google Earth), you’ll need the new Intel driver (http://www.intellinuxgraphics.org). Fortunately, ''Jö'' provides updated packages for etch:
In /etc/apt/sources.list:
{{{deb http://jorrit.de/debian etch main}}}
And in /etc/X11/xorg.conf:
Section "Device" Identifier "grafiktschipp" Driver "intel" EndSection
apt keys for 3rd party repositories¶
~/bin/apt-add-key:
#!/bin/sh for X in $*; do gpg --keyserver wwwkeys.eu.pgp.net --recv-key $K; gpg -a --export $K | apt-key add done
Credits¶
This page is loosely based upon the following pages (thanks for the hints):
- http://stefan.desire.ch/howto/x41debian
- http://demod.org/linux/thinkpad_x41
- http://linux.spiney.org/debian_gnu_linux_on_an_ibm_thinkpad_t43p_fingerprint_reader
- http://www.thinkwiki.org/wiki/Category:X41
- (https://www.net-track.ch/opensource/articles/x41.php)
Ubuntu¶
Scrolling in Lucid Lynx (10.4)¶
/usr/lib/X11/xorg.conf.d/20-thinkpad.conf
:
Section "InputClass" Identifier "Trackpoint Wheel Emulation" MatchProduct "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint" MatchDevicePath "/dev/input/event*" Option "EmulateWheel" "true" Option "EmulateWheelButton" "2" Option "Emulate3Buttons" "false" Option "XAxisMapping" "6 7" Option "YAxisMapping" "4 5" EndSection