Difference between revisions of "IBM ThinkPad T23"

From ArchWiki
Jump to: navigation, search
(Xorg)
(Part of my ThinkPad page overhaul on the wiki)
Line 1: Line 1:
[[Category:Laptops (English)]]
+
[[Category:Laptops (English)]]
[[Category:HOWTOs (English)]]
+
[[Category:HOWTOs (English)]]
 
+
 
==Reference Information==
+
==Installation==
 
+
Extensive information about Linux on the T23 can be found at [http://www.thinkwiki.org/wiki/Category:T23]. What follows here are details specific to Arch Linux.
+
 
+
==Installation==
+
 
+
 
Works with no known issues. The point releases "Voodoo" and "Don't Panic" work without problems.
 
Works with no known issues. The point releases "Voodoo" and "Don't Panic" work without problems.
 
+
 
==Configuration==
+
==Configuration==
 
+
 
===NumLk===
+
===Power Management===   
 
+
 
Yes, this didn't work from the beginning for me, but here is the solution:
+
====Suspend and Hibernate====
 
+
Works flawlessly.  See [[Suspend to Disk]].   Also known to work with [[Pm-utils]].
  keycode 77 = Num_Lock
+
    
 
+
====Laptop Mode Tools====  
Ad that line to your ~/.xmodmap file.
+
Works flawlessly. See [[Laptop Mode Tools]].  
===tpb===
+
tpb (for '''T'''hink'''p'''ad '''B'''uttons) is available through pacman:
+
pacman -S tpb
+
tpb adds an on-screen volume bar for the volume buttons, '''THINKPAD''' button assignment, on-screen messages for '''Thinklight''', (on and off) and more.
+
 
+
===Powermanagment===
+
 
+
Works fine after reading the [[Pm-utils]] page.
+
 
+
====Suspend and Hibernate====
+
Works well with pm-utils. May be called from command line as root:
+
# pm-suspend
+
or
+
# pm-hibernate
+
May also be called when closing the lid-
+
 
+
/etc/acpi/events/lid :
+
event=button/lid
+
#action=echo POWEROFF |  /usr/lib/xfce4/xfsm-shutdown-helper # shutdown with Xfce
+
#action=pm-hibernate
+
#action=/opt/kde/bin/dcop --all-users --all-sessions ksmserver ksmserver logout 0 2 0 # Shutdown with KDE
+
action=pm-suspend
+
Or, from the power button event-
+
 
+
/etc/acpi/events/power:
+
   # /etc/acpi/events/power
+
  # This is called when the user presses the power button
+
  event=button/power (PWR.||PBTN)
+
  action=echo POWEROFF |  /usr/lib/xfce4/xfsm-shutdown-helper # shutdown with Xfce
+
#action=/opt/kde/bin/dcop --all-users --all-sessions ksmserver ksmserver logout 0 2 0 # shutdown with KDE
+
#action=pm-hibernate
+
#action=pm-suspend
+
 
+
====Restoring network and sound on resume====
+
Create /etc/pm/sleep.d/suspend with the following content:
+
#!/bin/bash
+
/etc/rc.d/network restart
+
mixers="Master PCM CD"
+
for mixer in $mixers ; do
+
  /usr/bin/amixer -q sset $mixer mute
+
    /usr/bin/amixer -q sset $mixer unmute
+
    done
+
This will simply restart your network and mute/unmute the sound, which restores functionality on resume.
+
===Laptop Mode Tools===
+
The Linux kernel, starting from version 2.6.6, contains a feature called laptop mode. This feature is also present in the Linux 2.4 series starting from version 2.4.23. When you enable this feature, The kernel allows your hard drive to spin down more often, resulting in significant power savings. To make laptop mode work, you need to install the userspace tools. The Laptop Mode Tools package contains everything you need to make laptop mode work. [http://www.samwel.tk/laptop_mode/ Laptop Mode Tools Website])
+
 
+
To install laptop-mode-tools:
+
pacman -S laptop-mode-tools
+
Add laptop-mode to your DAEMONS array in /etc/rc.conf:
+
DAEMONS=(@network @acpid  @syslog-ng @alsa @hal @fam @laptop-mode)
+
 
+
===Hotkeys===
+
 
+
They work better after loading the thinkpad-acpi module, to assign the generated keycodes to there supposed functions.
+
 
+
As of December 2007, they don't work properly, since HAL is messing around with it's improvments. Read further in the Troubleshooting section.
+
 
+
===Xorg===
+
 
+
Works with driver xf86-video-savage.
+
 
+
Here is the mentioned file, for those who don't have a working configuration yet:
+
 
+
# /etc/X11/xorg.conf (xorg X Window System server configuration file)
+
 
   
 
   
Section "Files"
+
====CPU Frequency Scaling====
FontPath "/usr/share/fonts/X11/misc"
+
Doesn't work, despite following [[CPU Frequency Scaling]].  In specific, modprobe apci-cpufreq fails with:  
FontPath "/usr/X11R6/lib/X11/fonts/misc"
+
  FATAL: Error inserting acpi_cpufreq (/lib/modules/2.6.25-ARCH/kernel/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.ko): No such device
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"
+
Adding modules thinkpad-acpi and ibm-acpi has no effect on this.
Load "i2c"
+
 
Load "bitmap"
+
===Hotkeys===   
Load "ddc"
+
They work better after loading the thinkpad-acpi module, to assign the generated keycodes to there supposed functions.  
Load "dri"
+
Load "extmod"
+
Load "freetype"
+
Load "glx"
+
Load "int10"
+
Load "vbe"
+
  EndSection
+
 
   
 
   
Section "InputDevice"
+
As of December 2007, they don't work properly, since HAL is messing around with it's improvements. Read further in the Troubleshooting section.
Identifier "Generic Keyboard"
+
 
Driver "kbd"
+
====tpb====
Option "CoreKeyboard"
+
tpb (for '''T'''hink'''p'''ad '''B'''uttons) is available through pacman:
Option "XkbRules" "xorg"
+
pacman -S tpb
Option "XkbModel" "pc105"
+
tpb adds an on-screen volume bar for the volume buttons, '''THINKPAD''' button assignment, on-screen messages for '''Thinklight''', (on and off) and more.
        Option "XkbLayout" "gb"
+
 
# Option "XkbVariant" "nodeadkeys"
+
====NumLk====
EndSection
+
Yes, this didn't work from the beginning for me, but here is the solution:
 
   
 
   
  Section "InputDevice"
+
  keycode 77 = Num_Lock
Identifier "Configured Mouse"
+
Driver "mouse"
+
Option "CorePointer"
+
Option "Device" "/dev/input/mice"
+
Option "Protocol" "ImPS/2"
+
# Option "Emulate3Buttons" "on"
+
# Emulating the Wheel.
+
Option          "EmulateWheel"          "on"
+
Option          "EmulateWheelButton"    "2"
+
EndSection
+
 
   
 
   
Section "Device"
+
Add that line to your ~/.xmodmap file.
Identifier "S3 Inc. SuperSavage IX/C SDR"
+
Driver "savage"
+
EndSection
+
 
   
 
   
Section "Monitor"
+
 
Identifier "Generic Monitor"
+
===Xorg===   
Option "DPMS"
+
Works with driver xf86-video-savage.
HorizSync 28-51
+
VertRefresh 43-60
+
DisplaySize 271 201 # 96 DPI @ 1024x768
+
EndSection
+
 
   
 
   
Section "Screen"
+
Here is the mentioned file, for those who don't have a working configuration yet:
Identifier "Default Screen"
+
Device "S3 Inc. SuperSavage IX/C SDR"
+
Monitor "Generic Monitor"
+
DefaultDepth 24
+
SubSection "Display"
+
Depth 16
+
Modes "1024x768"
+
EndSubSection
+
SubSection "Display"
+
Depth 24
+
Modes "1024x768"
+
EndSubSection
+
EndSection
+
 
   
 
   
  Section "ServerLayout"
+
# /etc/X11/xorg.conf (xorg X Window System server configuration file)
  Identifier "Default Layout"
+
 
  Screen "Default Screen"
+
Section "Files"
  InputDevice "Generic Keyboard"
+
FontPath "/usr/share/fonts/X11/misc"
  InputDevice "Configured Mouse"
+
FontPath "/usr/X11R6/lib/X11/fonts/misc"
   EndSection
+
FontPath "/usr/share/fonts/X11/cyrillic"
+
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
  Section "DRI"
+
FontPath "/usr/share/fonts/X11/100dpi/:unscaled"
  Mode 0666
+
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 "i2c"
 +
Load "bitmap"
 +
Load "ddc"
 +
Load "dri"
 +
Load "extmod"
 +
Load "freetype"
 +
Load "glx"
 +
Load "int10"
 +
Load "vbe"
 +
EndSection
 +
 
 +
Section "InputDevice"
 +
Identifier "Generic Keyboard"
 +
Driver "kbd"
 +
Option "CoreKeyboard"
 +
Option "XkbRules" "xorg"
 +
Option "XkbModel" "pc105"
 +
        Option "XkbLayout" "gb"
 +
# Option "XkbVariant" "nodeadkeys"
 +
EndSection
 +
 
 +
Section "InputDevice"
 +
Identifier "Configured Mouse"
 +
Driver "mouse"
 +
Option "CorePointer"
 +
Option "Device" "/dev/input/mice"
 +
Option "Protocol" "ImPS/2"
 +
# Option "Emulate3Buttons" "on"
 +
# Emulating the Wheel.
 +
Option          "EmulateWheel"          "on"
 +
Option          "EmulateWheelButton"    "2"
 +
EndSection
 +
 
 +
Section "Device"
 +
Identifier "S3 Inc. SuperSavage IX/C SDR"
 +
Driver "savage"
 +
EndSection
 +
 
 +
Section "Monitor"
 +
Identifier "Generic Monitor"
 +
Option "DPMS"
 +
HorizSync 28-51
 +
VertRefresh 43-60
 +
DisplaySize 271 201 # 96 DPI @ 1024x768
 +
EndSection
 +
 
 +
Section "Screen"
 +
Identifier "Default Screen"
 +
Device "S3 Inc. SuperSavage IX/C SDR"
 +
Monitor "Generic Monitor"
 +
DefaultDepth 24
 +
SubSection "Display"
 +
Depth 16
 +
Modes "1024x768"
 +
EndSubSection
 +
SubSection "Display"
 +
Depth 24
 +
Modes "1024x768"
 +
EndSubSection
 +
EndSection
 +
 
 +
  Section "ServerLayout"  
 +
  Identifier "Default Layout"  
 +
  Screen "Default Screen"  
 +
  InputDevice "Generic Keyboard"  
 +
  InputDevice "Configured Mouse"  
 +
   EndSection  
 +
 
 +
  Section "DRI"  
 +
  Mode 0666  
 
  EndSection
 
  EndSection
 
Maybe I'll find some time to clean up this conf. :-)
 
 
The new version of X.org has a "bullet proof" runtime mode, allowing to use X without any configuration. However, this mode wasn't testet yet.
 
 
==Troubleshooting==
 
 
===Savage===
 
 
====xf86-video-savage====
 
 
The xf86-video-savage driver, version 2.1.2-3 is buggy and broke down the DRI acceleration.
 
Since version 2.3.1-1 was released, this problem doesn't remain anymore.
 
 
====Compositing and friends====
 
AIGLX and stuff like this doesn't work, since the driver claims this typicall error:
 
 
libGL warning: 3D driver claims to not support visual 0x4c
 
 
Anyway I have read some information about using xcompmngr and VESA drivers to get some kind of compositing to work. But I haven't played around with stuff like this yet, since it doesn't bother me much and the graphics card isn't powerfull anyway.
 
 
===Hotkeys===
 
 
More to come...
 
 
==More Resources==
 
 
Thinkwiki [http://www.thinkwiki.org]
 
  
Category T23 at Thinkwiki [http://www.thinkwiki.org/wiki/Category:T23]
+
==Other Resources== 
 +
[http://www.thinkwiki.org/wiki/Category:T23 Thinkwiki]

Revision as of 01:40, 28 July 2008


Installation

Works with no known issues. The point releases "Voodoo" and "Don't Panic" work without problems.

Configuration

Power Management

Suspend and Hibernate

Works flawlessly. See Suspend to Disk. Also known to work with Pm-utils.

Laptop Mode Tools

Works flawlessly. See Laptop Mode Tools.

CPU Frequency Scaling

Doesn't work, despite following CPU Frequency Scaling. In specific, modprobe apci-cpufreq fails with:

  FATAL: Error inserting acpi_cpufreq (/lib/modules/2.6.25-ARCH/kernel/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.ko): No such device 

Adding modules thinkpad-acpi and ibm-acpi has no effect on this.

Hotkeys

They work better after loading the thinkpad-acpi module, to assign the generated keycodes to there supposed functions.

As of December 2007, they don't work properly, since HAL is messing around with it's improvements. Read further in the Troubleshooting section.

tpb

tpb (for Thinkpad Buttons) is available through pacman:

pacman -S tpb 

tpb adds an on-screen volume bar for the volume buttons, THINKPAD button assignment, on-screen messages for Thinklight, (on and off) and more.

NumLk

Yes, this didn't work from the beginning for me, but here is the solution:

keycode 77 = Num_Lock 

Add that line to your ~/.xmodmap file.


Xorg

Works with driver xf86-video-savage.

Here is the mentioned file, for those who don't have a working configuration yet:

# /etc/X11/xorg.conf (xorg X Window System server configuration file) 
 
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	"i2c" 
	Load	"bitmap" 
	Load	"ddc" 
	Load	"dri" 
	Load	"extmod" 
	Load	"freetype" 
	Load	"glx" 
	Load	"int10" 
	Load	"vbe" 
EndSection 
 
Section "InputDevice" 
	Identifier	"Generic Keyboard" 
	Driver		"kbd" 
	Option		"CoreKeyboard" 
	Option		"XkbRules"	"xorg" 
	Option		"XkbModel"	"pc105" 
       Option		"XkbLayout"	"gb" 
#	Option		"XkbVariant"	"nodeadkeys" 
EndSection 
 
Section "InputDevice" 
	Identifier	"Configured Mouse" 
	Driver		"mouse" 
	Option		"CorePointer" 
	Option		"Device"		"/dev/input/mice" 
	Option		"Protocol"		"ImPS/2" 
#	Option		"Emulate3Buttons"	"on" 
# Emulating the Wheel. 
	Option          "EmulateWheel"          "on" 
	Option          "EmulateWheelButton"    "2" 
EndSection 
 
Section "Device" 
	Identifier	"S3 Inc. SuperSavage IX/C SDR" 
	Driver		"savage" 
EndSection 
 
Section "Monitor" 
	Identifier	"Generic Monitor" 
	Option		"DPMS" 
	HorizSync 	28-51 
	VertRefresh	43-60 
DisplaySize 271 201 # 96 DPI @ 1024x768 
EndSection 
 
Section "Screen" 
	Identifier	"Default Screen" 
	Device		"S3 Inc. SuperSavage IX/C SDR" 
	Monitor		"Generic Monitor" 
	DefaultDepth 	24	 
	SubSection "Display" 
		Depth		16 
		Modes		"1024x768" 
	EndSubSection 
	SubSection "Display" 
		Depth		24 
		Modes		"1024x768" 
	EndSubSection 
EndSection 
 
Section "ServerLayout" 
	Identifier	"Default Layout" 
	Screen		"Default Screen" 
	InputDevice	"Generic Keyboard" 
	InputDevice	"Configured Mouse" 
 EndSection 
 
Section "DRI" 
	Mode	0666 
EndSection

Other Resources

Thinkwiki