Difference between revisions of "IBM ThinkPad T21"

From ArchWiki
Jump to: navigation, search
(tpb)
(Xorg)
Line 104: Line 104:
 
  # /etc/X11/xorg.conf (xorg X Window System server configuration file)  
 
  # /etc/X11/xorg.conf (xorg X Window System server configuration file)  
 
    
 
    
Section "ServerLayout"
+
Section "ServerLayout"
 
         Identifier    "X.org Configured"
 
         Identifier    "X.org Configured"
 
         Screen      0  "Screen0" 0 0
 
         Screen      0  "Screen0" 0 0
 
         InputDevice    "Mouse0" "CorePointer"
 
         InputDevice    "Mouse0" "CorePointer"
 
         InputDevice    "Keyboard0" "CoreKeyboard"
 
         InputDevice    "Keyboard0" "CoreKeyboard"
EndSection
+
EndSection
 
+
Section "Files"
Section "Files"
+
 
         RgbPath      "/usr/share/X11/rgb"
 
         RgbPath      "/usr/share/X11/rgb"
 
         ModulePath  "/usr/lib/xorg/modules"
 
         ModulePath  "/usr/lib/xorg/modules"
Line 119: Line 118:
 
         FontPath    "/usr/share/fonts/TTF"
 
         FontPath    "/usr/share/fonts/TTF"
 
         FontPath    "/usr/share/fonts/Type1"
 
         FontPath    "/usr/share/fonts/Type1"
EndSection
+
EndSection
 
+
Section "Module"
Section "Module"
+
 
         Load  "glx"
 
         Load  "glx"
 
         Load  "extmod"
 
         Load  "extmod"
Line 130: Line 128:
 
         Load  "dri"
 
         Load  "dri"
 
         Load  "freetype"
 
         Load  "freetype"
EndSection
+
EndSection
 
+
Section "InputDevice"
Section "InputDevice"
+
 
         Identifier  "Keyboard0"
 
         Identifier  "Keyboard0"
 
         Driver      "kbd"
 
         Driver      "kbd"
EndSection
+
EndSection
 
+
Section "InputDevice"
Section "InputDevice"
+
 
         Identifier  "Mouse0"
 
         Identifier  "Mouse0"
 
         Driver      "mouse"
 
         Driver      "mouse"
Line 143: Line 139:
 
         Option      "Device" "/dev/input/mice"
 
         Option      "Device" "/dev/input/mice"
 
         Option      "ZAxisMapping" "4 5 6 7"
 
         Option      "ZAxisMapping" "4 5 6 7"
EndSection
+
EndSection
 
+
Section "Monitor"
Section "Monitor"
+
 
         Identifier  "Monitor0"
 
         Identifier  "Monitor0"
 
         VendorName  "Monitor Vendor"
 
         VendorName  "Monitor Vendor"
 
         ModelName    "Monitor Model"
 
         ModelName    "Monitor Model"
EndSection
+
EndSection
 
+
Section "Device"
Section "Device"
+
 
         ### Available Driver options are:-
 
         ### Available Driver options are:-
 
         ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
 
         ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
Line 189: Line 183:
 
         BoardName  "86C270-294 Savage/IX-MV"
 
         BoardName  "86C270-294 Savage/IX-MV"
 
         BusID      "PCI:1:0:0"
 
         BusID      "PCI:1:0:0"
EndSection
+
EndSection
 
+
Section "Screen"
Section "Screen"
+
 
         Identifier "Screen0"
 
         Identifier "Screen0"
 
         Device    "Card0"
 
         Device    "Card0"
Line 220: Line 213:
 
                 Depth    24
 
                 Depth    24
 
         EndSubSection
 
         EndSubSection
EndSection
+
EndSection
+
 
+
 
==More Resources==  
 
==More Resources==  
 
   
 
   

Revision as of 23:43, 11 July 2008


Reference Information

Extensive information about Linux on the T23 can be found at [1]. What follows here are details specific to Arch Linux.

Installation

Works with no known issues. Tested on 2008.03 and 2008.06.

Configuration

NumLk

From the IBM ThinkPad T23 page:

keycode 77 = Num_Lock 

Add that line to your ~/.xmodmap file.

This, however, did not work for me. YMMV.

tpb

From the IBM ThinkPad T23 page:

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.

This however, also did not work for me. YMMV.

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 some scripts and configure some things. The Laptop Mode Tools package contains everything you need to make laptop mode work. 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) 

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.

External VGA

For whatever reason, external VGA output (for an external monitor) was disabled. This was fixed by doing this:

  # echo 1 > /proc/acpi/video/VID/DOS


Xorg

Works with driver xf86-video-savage. However, to achieve DRI (and thus OpenGL acceleration), you will have to use 16-bit color. The 8 MB of VRAM with the Savage GPU isn't enough to support 24 bit color, OpenGL, and 1024x768. You must either drop color depth or resolution.

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 "ServerLayout"
       Identifier     "X.org Configured"
       Screen      0  "Screen0" 0 0
       InputDevice    "Mouse0" "CorePointer"
       InputDevice    "Keyboard0" "CoreKeyboard"
EndSection
Section "Files"
       RgbPath      "/usr/share/X11/rgb"
       ModulePath   "/usr/lib/xorg/modules"
       FontPath     "/usr/share/fonts/misc"
       FontPath     "/usr/share/fonts/100dpi:unscaled"
       FontPath     "/usr/share/fonts/75dpi:unscaled"
       FontPath     "/usr/share/fonts/TTF"
       FontPath     "/usr/share/fonts/Type1"
EndSection
Section "Module"
       Load  "glx"
       Load  "extmod"
       Load  "xtrap"
       Load  "record"
       Load  "GLcore"
       Load  "dbe"
       Load  "dri"
       Load  "freetype"
EndSection
Section "InputDevice"
       Identifier  "Keyboard0"
       Driver      "kbd"
EndSection
Section "InputDevice"
       Identifier  "Mouse0"
       Driver      "mouse"
       Option      "Protocol" "auto"
       Option      "Device" "/dev/input/mice"
       Option      "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
       Identifier   "Monitor0"
       VendorName   "Monitor Vendor"
       ModelName    "Monitor Model"
EndSection
Section "Device"
       ### Available Driver options are:-
       ### Values: : integer, <f>: float, <bool>: "True"/"False",
       ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
       ### [arg]: arg optional
       #Option     "NoAccel"                   # [<bool>]
       #Option     "AccelMethod"               # <str>
       #Option     "HWCursor"                  # [<bool>]
       #Option     "SWCursor"                  # [<bool>]
       #Option     "ShadowFB"                  # [<bool>]
       #Option     "Rotate"                    # [<str>]
       #Option     "UseBIOS"                   # [<bool>]
       #Option     "LCDClock"                  # <freq>
       #Option     "ShadowStatus"              # [<bool>]
       #Option     "CrtOnly"                   # [<bool>]
       #Option     "TvOn"                      # [<bool>]
       #Option     "PAL"                       # [<bool>]
       #Option     "ForceInit"                 # [<bool>]
       #Option     "Overlay"                   # [<str>]
       #Option     "TransparencyKey"           # [<str>]
       #Option     "ForceInit"                 # [<bool>]
       #Option     "DisableXVMC"               # [<bool>]
       #Option     "DisableTile"               # [<bool>]
       #Option     "DisableCOB"                # [<bool>]
       #Option     "BCIforXv"                  # [<bool>]
       #Option     "DVI"                       # [<bool>]
       #Option     "IgnoreEDID"                # [<bool>]
       #Option     "BusType"                   # [<str>]
       #Option     "DmaType"                   # [<str>]
       #Option     "DmaMode"                   # [<str>]
       #Option     "AGPMode"                   # <i>
       #Option     "AGPSize"                   # <i>
       #Option     "DRI"                       # [<bool>]
       Identifier  "Card0"
       Driver      "savage"
       VendorName  "S3 Inc."
       BoardName   "86C270-294 Savage/IX-MV"
       BusID       "PCI:1:0:0"
EndSection
Section "Screen"
       Identifier "Screen0"
       Device     "Card0"
       Monitor    "Monitor0"
       DefaultDepth 16
       SubSection "Display"
               Viewport   0 0
               Depth     1
       EndSubSection
       SubSection "Display"
               Viewport   0 0
               Depth     4
       EndSubSection
       SubSection "Display"
               Viewport   0 0
               Depth     8
       EndSubSection
       SubSection "Display"
               Viewport   0 0
               Depth     15
       EndSubSection
       SubSection "Display"
               Viewport   0 0
               Depth     16
       EndSubSection
       SubSection "Display"
               Viewport   0 0
               Depth     24
       EndSubSection
EndSection

More Resources

Thinkwiki [2]

Category T21 at Thinkwiki [3]