Installing Gentoo 2007.0 on a ThinkPad R61

From ThinkWiki
Revision as of 15:47, 15 October 2007 by Fuchs (Talk | contribs) (Ports)
Jump to: navigation, search

Model

Lenovo Thinkpad R61 7743-Y1B

General

This installation instruction describes the steps after a Gentoo 2007.0 base installation. Please read the gentoo handbook for installation instructions

Graphics: NVIDIA Quadro NVS 140M

To install and configure the nVidia driver, just emerge nvidia-driver. Tested with nvidia-driver-100.14.19, everything works fine, games run smooth.

Framebuffer works fine with vga=791, might work on higher resolutions as well, hwinfo --framebufer displays the supported resolutions.

NOTE!
The brightness cannot be changed while X is displayed. Press Ctrl-Alt-F1 to switch to the first virtual console. There, change the brightness by pressing Fn-Pos1 or Fn-End. Then, press Ctrl-Alt-F7 to return to X.

Sound: AD1984

Did not work with older Versions of ALSA driver, works fine with ALSA 1.0.15 and should work with ALSA 1.0.14 as well. The in-kernel ALSA works since 2.6.23.

The mute button is hardwired and works, the volume up and volume down buttons work as well but you need to configure them first.

Note: After muting you have to press a volume up or down button to unmute, and the mute status is not displayed in any mixer application.

Network: Intel E1000 NIC and IPW4965abgn WNIC

The integrated e1000 LAN NIC works out of the box.

For wireless you have to unmask and emerge the iwlwifi package with the ipw4965 USEFlag enabled.

Don't forget that the interface (wlan0) has to be set as up (ifconfig wlan0 up) before scanning and associating works.

Ports: PCMCIA, USB, IEEE 1394 Firewire

PCMCIA port works out of the box, tested with an audigy pcmcia. I have no express slot cards available for testing.

The left hand usb ports generate an IRQ nobody cared error from time to time, Try to boot with irqpoll in your kernel line as suggested.

Firewire is untested but should work, as the port is recognized and the module loaded.

Drives

The optical drive and hard drive work out of the box

Input

TouchPad

Works out of the box here, with scrolling. Have a look at my Xorg.conf section at the end

Trackpoint

Works out of the box as well, with no scrolling however. Can be configured via xorg.conf, I prefer using the middle button as mouse3.

Keyboard

Works out of the box, most of the Fn Keys work.

Hardwired: Mute, Thinklight, Brightness

Generates a keycode and can be configured: Volume Down, Volume Up, Fn+F2, Fn+F3, Fn+F4, Fn+F5, Fn+F7, Fn+Arrows

Does not generate a key event: Fn+F8, Fn+F9, Fn+F12, Fn+Space

Power Management

Suspend to RAM worked out of the box here, echo 3 > /proc/acpi/sleep puts the machine in suspend mode, opening it or pressing the power button wakes it up. Worked with nvidia driver and in X11. All devices came back without problems, wlan might have disconnected, but by using networkmanager, wicd or a good configuration it should reconnect after waking up. Works here with wicd.

Integrated Fingerprint Reader

Emerge the thinkfinger package, add a user with the tf-tool. Then you have to edit the /etc/pam.d/system-auth file by adding

auth sufficient pam_thinkfinger.so

between pam.unix and pam.env.

Refer to the Gentoo-Wiki to use it with xscreensaver, there is a good solution over there

Note: kdm has problems with thinkfinger auth and might crash. There are patches, but I didn't test them yet. gdm works fine here.

Configuration Files

xorg.conf

Note that I use the XFont Server, you might have to change the font path.


Section "ServerLayout"
	Identifier     "single head configuration"
	Screen         0 "Screen0" 0 0
        InputDevice    "Keyboard0" "CoreKeyboard"
	InputDevice    "Mouse0" "CorePointer" 
        inputDevice    "Touchpad" "SendCoreEvents"
EndSection

Section "Files"
	FontPath     "unix/:-1"
EndSection

Section "Module"
	Load  "dbe"
	Load  "extmod"
	Load  "fbdevhw"
	Load  "glx"
	Load  "record"
	Load  "freetype"
	Load  "type1"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
	Option	    "XkbModel" "pc102"
	Option	    "XkbLayout" "ch"
EndSection

Section "InputDevice"
    Identifier	"Touchpad"
    Driver	"synaptics"
    Option	"Protocol"	"auto-dev"
    Option	"Device"	"/dev/input/mouse0"
    Option	"Emulate3Buttons"	"no"
    Option	"ZAxisMapping"	"4 5"
    Option	"LeftEdge"	"1700"
    Option	"RightEdge"	"5300"
    Option	"TopEdge"	"1700"
    Option	"BottomEdge"	"4200"
    Option	"FingerLow"	"25"
    Option	"FingerHigh"	"30"
    Option	"MaxTapTime"	"180"
    Option	"MaxTapMove"	"220"
    Option	"VertScrollDelta"	"100"
    Option	"MinSpeed"	"0.02"
    Option	"MaxSpeed"	"0.28"
    Option	"AccelFactor"	"0.0010"
    Option	"SHMConfig"	"on"
    Option	"UseSHM"	"true"
EndSection


Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "ExplorerPS/2"
	Option	    "Device" "/dev/input/mice"
	Option	    "ZAxisMapping" "6 7"
	Option	    "buttons" "7"
	Option	    "Emulate3Buttons" "yes"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Flat Panel 1400x950"
	Option	     "DPMS"
EndSection

Section "Device"
	Identifier  "Videocard0"
	Driver      "nvidia"
	VendorName  "NVIDIA"
	BoardName   "NVIDIA GeForce FX (generic)"
	Option      "AllowGLXWithComposite" "true"
	Option      "RenderAccel" "true"
	Option	    "Backingstore" "true"
EndSection

Section "Screen"
	Identifier   "Screen0"
	Device       "Videocard0"
	Monitor      "Monitor0"
	DefaultDepth 24
	Option      "AddARGBGLXVisuals" "true"
	SubSection "Display"
		Viewport  0 0
		Depth     24
		Modes    "1440x900" "1024x768" "800x600" "640x480"
	EndSubSection
	SubSection "Display"
		Viewport 0 0
		Depth 16
		Modes	"1440x900" "1024x768" "800x600" "640x480"
	EndSubSection
	        SubSection "Display"
	        Viewport 0 0
		Depth 8
		Modes   "1440x900" "1024x768" "800x600" "640x480"
		EndSubSection
EndSection

Section "Extensions"
    Option "Composite" "Enable"
EndSection

Section "DRI"
	Group        0
	Mode         0666
EndSection


xmodmap

Note: you have to xmodmap /path/to/file this file in your autostart. You might have different keycodes, use the application xev to display them.


# Fn + Fx Keys ,from F2 to F7
keycode 146 = F22
keycode 241 = F23
keycode 223 = F24
keycode 142 = F25
keycode 214 = F26
keycode 215 = F27

# Volume buttons
keycode 174 = F30
keycode 176 = F31

# Fn + Arrows
keycode 144 = F32
keycode 162 = F33
keycode 153 = F34
keycode 164 = F35