/*Note: This is a work in progress, and will be updated frequently as my experiences with Ubuntu on my T42 continue. Please contribute by emailing me or leaving a comment below.
Last updated: 1/19/05
Table of Contents
I recently “resolved” the issues barring me from running Linux on my ThinkPad. Specifically, I needed to run some software for work that was completely not working under Linux (believe me: I tried). I “fixed” this by finally setting up my work ThinkPad for remote access, leaving me free and clear to destroy my personal T42.
I’ve been a huge fan of Fedora in the past, and I’ve had excellent luck with it on the desktop front, but I recently started installing Ubuntu (oo-BOON-too) on a few workstations (notably, my Mac mini).
Installation
After backing up my Windows installation (just in case), I downloaded the install image for the Ubuntu 5.04 (Hoary Hedgehog). TuxMobil links to a user who successfully installed Ubuntu on his T42p, so I was feeling good about the installation. Unfortunately, his page is really a bunch of quick notes from research he did before buying the laptop, and is quite difficult to digest. Which brings me to begin this guide.
From the moment the ThinkPad booted from the Ubuntu install CD, I knew I was in for a treat. Everything went smoothly – even detecting the IBM a/b/g wireless miniPCI card “out of the box.” Installation does take a while, since are given (and should take) the option of downloading the latest packages from the Ubuntu servers. Luckily, my office has a bona-fide 100Mbit connection to the Internet. If you’re on a “standard” cable connection, it’ll probably take a few extra minutes. In less than 20 minutes I was sitting at the beautiful Ubuntu login screen.
Some notable comments on hardware support:
- Sound: works out of the box, and the volume controls on the ThinkPad’s keyboard work as well.
- Network: both wired and wireless (IBM/Atheros a/b/g miniPCI) work “out of the box.”
- Video: The video card is detected correctly as an ATI Radeon Mobility 9600, and xorg uses the ati driver, which doesn’t include 3D accelleration support. To enable support, we’ll have to install ATI’s fglrx drivers (see below).
- Hard Drive Active Protection: The new ThinkPads are equipped with IBM’s patented hard drive protection technology. The IBM Active Protection System detects system acceleration like that which occurs in a fall or sudden move and responds by temporarily parking the drive’s head. This feature can save your hard drive in the event of a fall or sudden impact. The IBM drivers for Windows display the system status and show a nifty graphical representation of your ThinkPad in motion. Unfortunately, there is no support for Linux yet.
- ACPI: Yes! Finally, a distribution that support sleep and suspend “out of the box.”
Post-Installation Tweaks
Linux just wouldn’t be Linux if there wasn’t some grunt-work to be done. Here are a few tips I to get certain things (mostly) working.
Installing a CPU-specific Kernel
We installed off the i386 installation CD, which will work fine, but will not allow us to take advantage of some architectural enhancements present in 686-generation CPUs. To remedy this, we’ll install the latest 686 kernel.
sudo apt-get install linux-686
Power Management
The Hoary beta provides support for suspend and resume with kernel 2.6.10 or newer and acpi-support 0.11 or later. To enable support for these ACPI functions, edit /etc/default/acpi-support and uncomment the line:
ACPI_SLEEP=true
To enable suspend to disk on Hoary, edit /boot/grub/menu.lst and go to the line starting #kopt. Add the following (replace /dev/hda5 with your swap partition):
resume=/dev/hda5
# kopt=root=/dev/hda1 resume=/dev/hda5 ro pci=noacpi acpi_sleep=s3_bios
Finally, run sudo update-grub and reboot.
To suspend to RAM, either press the ThinkPad’s sleep button (FN + F4 or run sudo /etc/acpi/sleep.sh. To suspend to disk, either press your machine’s hibernate button or run sudo /etc/acpi/hibernate.sh. Buttons will be added to the System menu for the final release.
Video
Note: Installing the “fglrx” drivers will break suspend/resume support (for now). If anyone has a solution for the video corruption which occurs on resume, let me know.
Hoary will install the “ati” driver by default, which offers very limited 3D support. For a much speedier graphics experience, you’ll need to install the ATI “fglrx” binary driver package. Install the drivers from the repository:
sudo apt-get install xorg-driver-fglrx
Once installed, we must load the kernel module by default:
echo fglrx | sudo tee -a /etc/modules
We also need to configure Xorg to use the “fglrx” driver instead of the default “ati” driver:
sudo sed -i -e 's/"ati"/"fglrx"/' /etc/X11/xorg.conf
Now, reboot and you should end up in X with the “fglrx” drivers working correctly. You can tell by running fglrxinfo from the command line:
oaaltone@beta:~$ fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: MOBILITY RADEON 9600 Generic OpenGL version string: 1.3.4769 (X4.3.0-8.8.25)
Also, if you run glxgears, you should receive framerates of over 1,000 fps:
oaaltone@beta:~$ glxgears 6448 frames in 5.0 seconds = 1289.600 FPS 6793 frames in 5.0 seconds = 1358.600 FPS 6792 frames in 5.0 seconds = 1358.400 FPS 6783 frames in 5.0 seconds = 1356.600 FPS
ThinkPad Buttons
NOTE: At this time, the tpb package is not in the universe repository.
Install tpb (from the universe repository for support of the ThinkPad’s function keys:
sudo apt-get install tpb
Add the nvram kernel module to /etc/modules:
echo nvram | sudo tee -a /etc/modules
Make sure you add the appropriate users to the nvram group:
sudo addgroup --system nvram sudo adduser [username] nvram
All that’s left to do is to is to make sure that udev gives read/write permissions for the /dev/nvram device to all members of the nvram group. Make sure /etc/udev/permissions.d/udev.permissions has the following lines:
misc/nvram:root:nvram:660 nvram:root:nvram:660
Upon reboot, you should see the on-screen display accompany any function key actions, like adjusting the volume with the ThinkPad’s volume control buttons.
Center-Button Scrolling
For those of us who use the award-winning TrackPoint pointing device, it’s handy to use the center, blue button for scrolling functionality. In Windows, this is taken care of by IBM’s drivers, but in Linux we can enable this feature by some editing of xorg.conf.
Open /etc/X11/xorg.conf in the text editor of your choosing, and add the following two lines to the appropriate InputDevice section (see my xorg.conf below):
Option "EmulateWheel" Option "EmulateWheelButton" "2"
Restart X and you should be able to press the center, blue button and use the TrackPoint as a scroll wheel.
To Do
There are a few things to set straight before I would consider the installation guide complete. Look for more details in the coming days/weeks/months. Here are my general notes and comments on items that will be added in the future.
- WPA (PSK) support using wpasupplicant.
- Suspend/resume issues with binary ATI drivers.
- Drivers for ThinkPad Active Protection System (hard drive accelerometer).
- Power management profile system similar to IBM’s Windows utility.
Miscellaneous Output
- lsmod
Module Size Used by speedstep_centrino 7892 1 proc_intf 3908 0 freq_table 4004 1 speedstep_centrino cpufreq_userspace 4348 1 cpufreq_ondemand 6140 0 cpufreq_powersave 1632 0 pcmcia 22244 4 video 15972 0 sony_acpi 5928 0 pcc_acpi 11008 0 ibm_acpi 17524 0 button 6480 0 battery 9988 0 container 4320 0 ac 4676 0 af_packet 21992 2 ath_pci 60608 0 ath_rate_onoe 8904 1 ath_pci wlan 118524 3 ath_pci,ath_rate_onoe ath_hal 133232 2 ath_pci e1000 85620 0 yenta_socket 21344 0 pcmcia_core 57984 2 pcmcia,yenta_socket snd_intel8x0m 18212 0 snd_intel8x0 32352 2 snd_ac97_codec 74144 2 snd_intel8x0m,snd_intel8x0 snd_pcm_oss 52132 0 snd_mixer_oss 19680 2 snd_pcm_oss snd_pcm 94696 5 snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss snd_timer 25060 1 snd_pcm snd 55012 8 snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer soundcore 10016 2 snd snd_page_alloc 9732 3 snd_intel8x0m,snd_intel8x0,snd_pcm i2c_i801 8364 0 i2c_core 22320 1 i2c_i801 hw_random 5300 0 ehci_hcd 32676 0 uhci_hcd 32816 0 usbcore 118968 3 ehci_hcd,uhci_hcd shpchp 99172 0 pci_hotplug 33488 1 shpchp intel_agp 22076 1 agpgart 33608 1 intel_agp irtty_sir 8544 0 sir_dev 18828 1 irtty_sir irda 191936 2 irtty_sir,sir_dev crc_ccitt 1920 1 irda floppy 58864 0 rtc 12472 0 pcspkr 3496 0 md 47280 0 dm_mod 59420 1 capability 4648 0 commoncap 7712 1 capability evdev 9344 0 fglrx 237088 9 tsdev 7520 0 nvram 9096 1 psmouse 21320 0 mousedev 11288 1 parport_pc 37252 1 lp 11144 0 parport 36744 2 parport_pc,lp ide_cd 41700 0 cdrom 40220 1 ide_cd ext3 136424 1 jbd 60216 1 ext3 mbcache 8356 1 ext3 ide_generic 1312 0 piix 10340 1 ide_disk 20416 3 ide_core 129356 4 ide_cd,ide_generic,piix,ide_disk unix 28276 937 thermal 13320 0 processor 22452 2 speedstep_centrino,thermal fan 4388 0 fbcon 37504 0 crc32 4128 1 fbcon font 8192 1 fbcon bitblit 5472 1 fbcon vesafb 6724 0 cfbcopyarea 3808 1 vesafb cfbimgblt 2912 1 vesafb cfbfillrect 3488 1 vesafb
- lspci
0000:00:00.0 Host bridge: Intel Corp. 82855PM Processor to I/O Controller (rev 03) 0000:00:01.0 PCI bridge: Intel Corp. 82855PM Processor to AGP Controller (rev 03) 0000:00:1d.0 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 01) 0000:00:1d.1 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 01) 0000:00:1d.2 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 01) 0000:00:1d.7 USB Controller: Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB 2.0 EHCI Controller (rev 01) 0000:00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev 81) 0000:00:1f.0 ISA bridge: Intel Corp. 82801DBM LPC Interface Controller (rev 01) 0000:00:1f.1 IDE interface: Intel Corp. 82801DBM (ICH4) Ultra ATA Storage Controller (rev 01) 0000:00:1f.3 SMBus: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 01) 0000:00:1f.5 Multimedia audio controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 01) 0000:00:1f.6 Modem: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 01) 0000:01:00.0 VGA compatible controller: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10] 0000:02:00.0 CardBus bridge: Texas Instruments PCI4520 PC card Cardbus Controller (rev 01) 0000:02:00.1 CardBus bridge: Texas Instruments PCI4520 PC card Cardbus Controller (rev 01) 0000:02:01.0 Ethernet controller: Intel Corp. 82540EP Gigabit Ethernet Controller (Mobile) (rev 03) 0000:02:02.0 Ethernet controller: Atheros Communications, Inc. AR5212 802.11abg NIC (rev 01)
- hdparm
/dev/hda: Timing cached reads: 2336 MB in 2.00 seconds = 1167.59 MB/sec Timing buffered disk reads: 98 MB in 3.01 seconds = 32.52 MB/sec /dev/hda: multcount = 0 (off) IO_support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 1 (on) keepsettings = 0 (off) readonly = 0 (off) readahead = 256 (on) geometry = 65535/16/63, sectors = 40007761920, start = 0
- xorg.conf
# /etc/X11/xorg.conf (xorg X Window System server configuration file) # # This file was generated by dexconf, the Debian X Configuration tool, using # values from the debconf database. # # Edit this file with caution, and see the /etc/X11/xorg.conf manual page. # (Type "man /etc/X11/xorg.conf" at the shell prompt.) # # This file is automatically updated on xserver-xorg package upgrades *only* # if it has not been modified since the last upgrade of the xserver-xorg # package. # # If you have edited this file but would like it to be automatically updated # again, run the following commands: # # cp /etc/X11/xorg.conf /etc/X11/xorg.conf.custom # sudo sh -c 'md5sum /etc/X11/xorg.conf >/var/lib/xfree86/xorg.conf.md5sum' # sudo dpkg-reconfigure xserver-xorg Section "Files" FontPath "unix/:7100" # local font server # if the local font server has problems, we can fall back on these FontPath "/usr/lib/X11/fonts/misc" FontPath "/usr/lib/X11/fonts/cyrillic" FontPath "/usr/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/lib/X11/fonts/Type1" FontPath "/usr/lib/X11/fonts/CID" FontPath "/usr/lib/X11/fonts/100dpi" FontPath "/usr/lib/X11/fonts/75dpi" # paths to defoma fonts FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID" 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" EndSection Section "InputDevice" Identifier "Generic Keyboard" Driver "keyboard" Option "CoreKeyboard" Option "XkbRules" "xorg" Option "XkbModel" "pc104" Option "XkbLayout" "us" EndSection Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ImPS/2" Option "Emulate3Buttons" "true" Option "ZAxisMapping" "4 5" Option "EmulateWheel" Option "EmulateWheelButton" "2" EndSection Section "InputDevice" Identifier "Synaptics Touchpad" Driver "synaptics" Option "SendCoreEvents" "true" Option "Device" "/dev/psaux" Option "Protocol" "auto-dev" Option "HorizScrollDelta" "0" EndSection Section "Device" Identifier "ATI Technologies, Inc. Radeon Mobility 9600/9700 M10/M11 (RV350 NP)" Driver "ati" BusID "PCI:1:0:0" EndSection Section "Monitor" Identifier "Generic Monitor" Option "DPMS" EndSection Section "Screen" Identifier "Default Screen" Device "ATI Technologies, Inc. Radeon Mobility 9600/9700 M10/M11 (RV350 NP)" Monitor "Generic Monitor" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1400x1050" EndSubSection SubSection "Display" Depth 4 Modes "1400x1050" EndSubSection SubSection "Display" Depth 8 Modes "1400x1050" EndSubSection SubSection "Display" Depth 15 Modes "1400x1050" EndSubSection SubSection "Display" Depth 16 Modes "1400x1050" EndSubSection SubSection "Display" Depth 24 Modes "1400x1050" EndSubSection EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" InputDevice "Synaptics Touchpad" EndSection Section "DRI" Mode 0666 EndSection
56 Comments
Hey,
I’ve got a T42 on order. Your guide is one of the best I’ve seen for the T42. Bravo. A couple questions, though:
(1) Given that I don’t have the machine yet, when you say “add the appropriate users to the nvram group”, can you specify, or indicate where this information is specified?
(2) At home I use WPA netowrking with my Apple Airport Extreme – so I’m really looking forward to your notes on this topic. My desktop Macs and PCs both work well with WPA… I’m really hoping that Linux can, too!
Thanks,
Jason
i have an IBM tihnkpad t42. i tried using a live CD from the ubuntu distro. all appears to work fine, except for the wireless connectivity. some research online suggests kanotix may have the newest kernel and drivers for the intel pro 2200 b/g hardware. i would like it to work with ubuntu.
thank you.
I know for a fact that the Intel PRO 2200bg will work under Ubuntu. During the Hoary installation process, it will detect the card and install the correct kernel module drivers.
Congratulations for this great guide. I look forward to upgrade my warty to hoary within this week.
Did you get the external monitor to work?
This is a great guide. Having installed Ubuntu (Hoary) on my T42 it was nice to find some people that have had the same results. If anyone has the IPW220b/g I suggest following the instructions in 1.0.1 version of the drivers. I haven’t tested the latest version. (Don’t for get the firmware!!!)
that should be IPW2200 b/g (not 220)
Excellent guide! I’ve had my t42p since august, and had all kinds of linuxes on it, and read lots of different guides (everyone has different ideas) and this is certainly among the best.
Kudos!
chris@edg3.org
Installing BlueCurve on a fresh install of Hoary screws up your menus. It looks great but you will have launchers missing in your “add to panel” areas as well as Redhat items (that launch nothing, such as kickstart) in your menus. I suggest NOT installing bluecurve or at least not in the mannor described here.
I have a t42 laptop connected to an external usb 2.0 hard drive. I could install ubuntu 5.04 on it but it failed to boot because of a kernel panic. Any ideas? BTW, I can boot from the same usb drive with another linux distribution so this is not a problem of hardware.
Hi,
you may add the following to your xorg.conf:
Section “InputDevice”
Identifier “Configured Mouse”
Driver “mouse”
Option “CorePointer”
Option “Device” “/dev/input/mice”
Option “Protocol” “ImPS/2″
Option “Emulate3Buttons” “true”
Option “ZAxisMapping” “4 5″
Option “EmulateWheel” # to get the trackpoint scrolling working
Option “EmulateWheelButton” “2″
EndSection
Thanks, manfred. Added.
Does anyone have the s-video out working for the T42. BTW this is a great guide, saved me a lot of time.
Thank you for sharing this great howto!
According to my tests, it looks like glxgears run a bit faster on gnome than on kde. I have t42p with fireGl card, runing at 1600×1200 pixels. On gnome i get aroun 1330 fps, and on kde aroun 1125.
Offtopic: if someone is trying to install Maya 6.5, it can be easily done with: alien -iv AW…rpm, one thing i want to point out though, is that you might need to install tcsh (you can find it in synaptic), at least i did when i ran it on kubuntu, dont know for ubuntu, i just installed it…
check out http://diwww.epfl.ch/~fleuret/installations.html#wpa for wpa with madwifi on the thinkpad t41p — same stuff applies to t42p
Thanks Oliver, this donation is well earned from a Linux newbie with a new T42! I look forward to any futher updates you choose to make. Everything works flawlessly once I followed your howto.
Getting Gentoo to work was killing me and my time.
Erik
Great guide! It’s a real pity that we still have these functionality gaps (the graphics driver is pretty crucial, but I won’t use Ubuntu full time unless APS and battery management are implemented as well). I thought IBM was one of the biggest proponents of a linux-based laptop…shouldn’t they be testing and releasing working linux drivers for their products, like APS and Battery MaxiMiser (and the FireGL)? Maybe someday…….but until then I must continue to remain in my cluttered, unsecure, yet fully functional Windows environment.
IBM remains fully devoted to Linux and the open-source movement, but the brunt of their efforts are towards fortifying its foothold in the server market, and currently towards moving independent software vendors towards Linux development. Linux isn’t quite mature enough in the desktop computing environment for them to worry about offering Linux-powered laptops. Internally, the company is committed towards migrating towards a Linux-based workstation over the next few years. Since a vast majority of their employees use ThinkPads, you can bet they’re developing support for ThinkPad hardware.
I am a little confused on the following point in the existing thread:
Under Ubuntu on T42s with the Radeon Mobility 9600 have people gotten
external monitors to work reliably (in at least 1024 x 768 screen res)?
Thanks
I’m considering a T42 to have Ubuntu installed on it, but require it to be connected to external projectors much of the time for presentations, and they will likely be 1024×768. How well does your T42 do this task? Can you simply plug it in and it “just works” or is there further tinkering to do to get it to send a correct signal to an external projector?
Thanks
For resume with installed fglrx driver, you have to use vbetool to save and restore the state of the graphic card.
“apt-get install vbetool ibm-acpi”
last thing is to uncomment four lines in “/etc/acpi/prepare.sh”
Look for “#And then try to save some video state”
Thanks! I’ll check out vbetool with the fglrx drivers ASAP and post my results.
does anyone know how to enable the multi-bay hotplug functionality? i have a 2nd battery and a cdrw drive, but if hot swap them, the cdrw drive doesn’t seem to be recognized. thanks! dc
You missed out one thing – there are issues with laptopmode whilst using wifi – the system will (after a short while) hard lockup. AFAIK the only solution is either (a) only use wifi whilst on power or (b) remove laptopmode (and lose the functionality)
I use wi-fi with laptop_mode and i have yet to experience hard-lockups
We have begun to make progress on the biometric scanner for the T42. As of last night, a developer with this hardware and interest has come to the surface and we’re looking forward to getting a working implementation on it. You can read up more in the forums an LinuxBiometrics.com if you are interested.
This is a nice guide – I also have a t42p, have tried suse 9.2 and like ubuntu much better.
I would also suggest this page: http://www.columbia.edu/~em36/ubuntuhoarythinkpadt42.html which I found very helpful.
I’ve also done the kernel rebuild with the trackpoint driver and that made my trackpoint much more controllable. thanks for this.
“IBM remains fully devoted to Linux and the open-source movement…” Hmph. Yeah right. What about Lenovo? I got a T43 in June and it is keeping to the name so far. Absolutely stunning. Gentoo is a pain to get working. Debating between Ubuntu and Suse right now. Any comments on cpufreq?
When I come back from acpi-sleep, my keys on my keyboard don’t respond correctly. Keyboard either doesn’t respond or the keys produce weird characters. Any help would be appreciated.
Instead of:
$ echo fglrx | sudo tee -a /etc/modules
and
$ echo nvram | sudo tee -a /etc/modules
you can simply do:
$ echo fglrx >> /etc/modules
and
$ echo nvram >> /etc/modules
If you like using su, that is.
Has anyone tried installing Ubuntu in a dual boot environment? That is, keeping the IBM recovery partition intact as well as windows?
Quick notes on how this is done?
Hi,
Nice guide. I’ve used it on my T41, not so far from the T42…
However, I’ve had a problem when resuming from a suspend-to-disk. An ext3 error occured, and my home partition was remount read-only, not very easy to use… Actually, I think it’s the write-cache of the hard drive that was activated. I have installed and configured hdparm by adding
/dev/hda {
mult_sect_io = 16
write_cache = off
dma = on
}
into the /etc/hdparm.conf. So far, no more ext3 errors. May be it can help some readers…
A very nice guide! Now that you have ubuntu up and running, how do you find its stability? What sort of uptimes do you get? (I know this is not quite accurate on a laptop) – on my old Thinkpad 600E, running an old version of mandrake, I never have to reboot. Is ubuntu as stable?
Thanks!
I tried the whole radeon thing for ATI it rooted my file and I didn’t back it up *sigh*
Is there a way to retain the ‘paste’ functionality of the middle button but also have the scrolling functionality? I love the scrolling, but can’t live without “highlight to select, middle click to paste”.
When I use a projector the resolution doesn’t fit anymore. Some of the screen is cut off. Did somebody solve this problem and could maybe post his xorg.conf file here. Thanks.
Hi,
I have used parts of your Ubuntu guide to create an
entry at http://thinkwiki.org/wiki/Installing_Ubuntu_5.04_on_a_ThinkPad_T43_%281875%29
This will help others who are trying to install Ubuntu on Thinkpads.
Kindly check out the page, and make any changes that you think are
needed. I have given a link to your site as well..
Regards,
Aditya Nag
Hi,
I install ubuntu on my thinkpad T41. It works fine but cpu fan keeps running all time. any solution for this?
Regards,
Jia
Oliver: Nice guide! I’ve been running Debian Testing on my T42 for 12 months or so, and almost everything works as required.
mlambie: If you enable the middle-button scrolling functionality, you may still be able to use the paste functionality by enabling 3rd button emulation in your X server config file. ie. you press buttons 1 and 2, and it acts as if you’ve pressed the 3rd button … I’ve not tested this, but it might be worth a look.
Duck: Hotswapping isn’t quite working as far as I can tell. If you boot the machine with the battery in, the kernel detects BAT0 and BAT1, if you try and hotswap it, I can’t get the kernel to recognise BAT1. Even removing, and re-inserting the kernel module doesn’t fix it. Sometimes, I get a hard lockup when inserting the battery, othertimes it works fine. When you do insert the Optical drive though, you can force the kernel to find it with hdparm. The (most recent, 0.11 NOT 0.8 as features in most distribution kernels) ibm-acpi package includes some ACPI scripts including “rescan.sh” which detects and configures the optical drive. Unfortunately though, DMA cannot be enabled unless you boot the kernel with the optical drive in the UltraSlim Bay – which makes DVD playback nasty, and slows considerably reading and writing data.
Kirk: Yes, I used Partition Magic in Windows XP to re-size my XP partition, and created some blank space between the XP partition and the recovery partition. Then booted into the Debian install and used fdisk to setup partitions in the blank space as normal. I’ve not had cause to use the Access IBM Recovery partition, but it all seems to be there and in order. There are guides around on how to do this, I think I found the information (12 months ago …) on ThinkWiki.
re: IR
I have had some issues where coming out of S3 (sleep, suspend-to-ram) IR refuses to load. However, suspending to disk and restating the machine restores IR functions. Odd.
re: Touchpad I have had some issues where the touchpad doesn’t work when coming out of S4 (hibernate, suspend-to-disk) but is fine the next time I hibernate and re-awaken the laptop. I also have some nasty screen corruption when coming out of hibernation, but it sorts itself out once it has finished resuming.
re: power management
I don’t get quite as long with my batteries on Linux as under Windows XP. A couple of possible reasons:
- CPU Frequency seems to drop as low as 223 MHz in WinXP but only to 600MHz under Linux.
- GPU Frequency scaling seems buggy under Linux (enable Dynamic Clocks in ATI device config)
- Support for ACPI brightness events is very limited (experimental in acpi-ibm 0.11) and therefore can’t be setup in scripts to fade brightness with battery level.
- Battery drain while in S3 is abominable. Aparently there is an experimental kernel patch that may solve the problem, but while I finish my dissertation I’m not messing with experimental kernel patches
- There’s no support for power saving modes in the IPW2200 wireless driver as far as I can tell.
- I’ve had some issues with IRDA and PCMCIA and getting them to shutdown / consume less power.
- CPUFreqd seems to lock into full-speed mode when coming out of sleep mode and needs to be restarted.
- ACPId seems to lose contact with the kernel sometimes and needs to be restarted.
I haven’t tested the modem, nor the s-video, nor external display … but I hear they can all be convinced to work …
Cheers
Dave
Drop me an email if there’s any more info
Hi,
maybe somebody like these links about the status of the linux Hard Drive Active Protection driver (its also in Debian unstable):
http://www.almaden.ibm.com/cs/people/marksmith/tpaps.html
http://sourceforge.net/projects/hdaps/
https://sourceforge.net/mailarchive/forum.php?forum_id=45521
BTW: I’ve got my 3rd T41 HD this year – nope, i am not using my laptop that hard, and I am not an alpha tester of the HDAP driver
Has anybody managed to use two different screen resolutions on the lcd and on the external vga port? i.e 1400×1050 on the internal lcd screen and 1024×768 on the external vga port, connected to a beamer?
I can’t get IrDA working. All the devices are shown in my lsmod:
irtty_sir 8512 0
sir_dev 18444 1 irtty_sir
irda 187612 2 irtty_sir,sir_dev
crc_ccitt 1984 1 irda
but irdadump doesn’t show anything. Any help?
Some IBM T42’s do not come with ATI Radeon Mobility 9600, rather they show up/have the following (seen by typing “lspci” at from a command prompt):
ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]
From all I can tell this video controller is NOT supported by the ATI fglrx X server. Users of the 7500 controller are stuck with the the ati server.
There are some nice suggestions for improvements however at this link at http://ubuntuforums.org:
http://ubuntuforums.org/showthread.php?t=26148
Hopefully this will be helpful to some.
My new Breezy install on my brand new T42p worked fine except that when I went to suspend (alt-F4), not only would it not come out of suspend, I could not reboot my machine! I powered down, took out the battery and still the thing would not restart. I heard the fan, but never saw the IBM splash or could get to the BIOS. The only solution was to pull out the CMOS battery under the keyboard to do a hard reset! Has anyone else seen this happen? I’m really surprised because most reports say this works out of the box. I’m afraid to try suspend again…
One very minor detail: I would suggest to use “sudo addgroup –system nvram” instead of “sudo addgroup nvram” to give the nvram group a gid that is not in the range of ordinary user groups.
Hallo,
I have installed the Ubuntu on a IBM-T42.
I can’t be able to connect with my wireless router, because the Ubuntu Tell me that the Wireless Adapter is Turned Off, while the adapter is ON (The Led is On on the Keyboard).
Someone Can Help Me?
I tried installing the fglrx driver like you said — on my new T43. It didn’t work and now I can only boot to a terminal. “Failed to start X server.” “Fatal server error: no screens found.”
I typed:
sudo apt-get install xorg-driver-fglrx
Then:
echo fglrx | sudo tee -a /etc/modules
Then:
sudo sed -i -e ’s/”ati”/”fglrx”/’ /etc/X11/xorg.conf
Then rebooted and the desktop wouldn’t start.
How can I reverse it? Can’t you make sed automatically create a backup file? It might be a good idea to list the command that way on your site so that less-experienced people (like me) will have a backup :S
I’m slowly going through it with the man pages… remove the fglrx from the end of /etc/modules and I’m not sure exactly what to do with xorg.conf yet. Any tips?
Thanks
Ok… finally got X server back up and running. Google and man pages helped me reverse those commands in my last comment (above).
In reverse — to remove the ATI fglrx driver if it isn’t working, this is what I did:
sudo apt-get remove xorg-driver-fglrx
Then:
sudo emacs /etc/modules
(or sudo vim /etc/modules)
(delete or comment out last line that says fglrx)
Then:
sudo sed -i -e ’s/”fglrx”/”ati”/’ /etc/X11/xorg.conf
Then I rebooted the computer and X server works now.
Just need to figure out why it didn’t work the first time…
hi,
edit:
/etc/acpi/prepare.sh
and remove the comments from:
# And then try to save some video state
if [ x$SAVE_VBE_STATE = "xtrue" ]; then
VBESTATE=`tempfile`
vbetool vbestate save >$VBESTATE;
fi
than suspend/hibernate will work correctly!
(from http://wiki.ubuntuusers.de/ATI/Probleml%C3%B6sungen)
Have fun
Great HowTo! I really appreciate that.
But i have one problem with following your instructions. I have Kubuntu Breezer installed with KDE 3.5.
I can´t understand the following instructions:
All that’s left to do is to is to make sure that udev gives read/write permissions for the /dev/nvram device to all members of the nvram group. Make sure /etc/udev/permissions.d/udev.permissions has the following lines:
misc/nvram:root:nvram:660
nvram:root:nvram:660
I can´t find neither the permissions.d folder nor the udev.permissions file. Have they been renamed in Kubuntu? Is all i have to to to add those 2lines? In which file?
Thx for your help! Of course you can email me too. I would be very thankful.
3 Trackbacks
[...] nk) den Artikel von Oliver Aaltonen "Ubuntu Linux on the IBM ThinkPad T42" (link) die Webseite der Columbia University "Ubu [...]
Ubuntu sur IBM Thinkpad T41
Il y a quelques jours, j’ai installé une Ubuntu Linux sur mon IBM T41 récemment acheté. Tout fonctionnait pas trop mal, mais je n’avais pas fait trop de tests en ce qui concerne l’économie d’énergie. Après quelques recher…
[...] I came across an excellent base document on getting Ubuntu functional (well, it’s more than a base). I’ve reproduced it here for convenience, but the original (with updates and comments is at aaltonen.us. This guy has got some really great info and he’s a local (to me anyway). If you like what he has to say as much as I do you might want to float some coin his way. Not to mention he’s a cutie (but he’s taken and not a reason to float coin his way btw). [...]