Linux on an IBM ThinkPad i1460

The IBM ThinkPad i1460 is an excellent machine to run Linux on.  It ships with MS Windows 98 preinstalled and contains the following hardware:
 


Linux

Linux works very well with this machine out of the box.  IBM provides an unused 2gb partition which can be used for Linux if you like.  In my case, I reinstalled the Windows image from the recovery CD so that I could obtain more space for Linux.  This is somewhat time consuming but still quite easy to do.  Just repartition, insert the recovery cd, boot up and away it goes.  You will probabloy want to keep Windows on the machine at least for the next while while we wait for better DVD support.  I recommend installing RedHat Linux 6.1 if possible since it has kernel version 2.2.12 which will be needed to get certain devices working such as the modem and sound.  The install should be completely flawless to start.  For the sound configuration, choose ESS Solo1 (es1938).  I personally use ALSA which also works.  The trickiest part of installation and configuration is getting the video driver to work.

Video

        - NEW SECTION -

Thanks to the hard work of Marc Aurele La France, we now have a working accelerated driver for the Thinkpad i series with Rage Mobility M video!  I have tested this on my 1460 and it works well so far.  This driver works as is.  Do NOT use the frame buffer console.  To remove the fbcon, edit your lilo.conf and remove any line that starts with vga=.  The driver that comes with XF86 3.3.6 claims to support this chipset but it does not work.  You must apply this patch to the X336 source and recompile with "make World".  Beware - it takes a long time to compile!  There is no need to install everything after compiling.  Just copy xc/programs/Xserver/XF86_Mach64 to /usr/X11/bin/ and go through the regular X configuration procedure or simply point the X symlink in /etc/X11/ to the proper server and use my XF86Config file.  You MUST reboot to get this server to work if you have loaded an X server already.  The old X servers clobber the clock registers and make the chipset unusable for an accelerated driver.  If you wish to use the XF86_SVGA server from time to time, you must also use the one compiled with this patch to save the clocks.  Finally, if you use Redhat 6.x and don't want to recompile XF86, I have made my Mach 64 and SVGA binary servers available for now.  Sorry no RPM's at this time.

Click here for ThinkPad i1460 performance numbers using x11perf.

3D Support - 3D acceleration is still under development but there is some functionality available.  You need two packages to get the 3D support working.  First you must get Mesa3D.   Compile and install this package but do not remove the source tree yet.  Then get GLX and compile it.  You must run ./autogen.sh --with-mesa=path-to-mesa to get it to compile properly (as per the instructions).  Note that CVS trees for these packages are probably more up-to-date.  They have instructions on the respective websites for obtaining anonymous CVS access.   I was unable to get Quake2 to work using this driver yet, but the Mesa demos work fine.  After installing these packages, to get XFree86 to use the driver, add the following lines to the end of your XF86Config file...

Section "Module"
   Load "glx.so"
EndSection
Also add the following options to the Device section for the ATI card.
   Option "no_font_cache"
   Option "no_pixmap_cache"
Beware - I have found GLX to be unstable and to cause lockups and crashes
Good luck!

        - END NEW SECTION -

Sound

Linux sound support for the es1938 seems to be in an almost-working state.  The latest OSS and ALSA drivers support this board in limited fashions.   The best supporting drivers seems to be the latest ALSA driver in the ALSA CVS.  It sets up /dev/dsp while the older ALSA and the OSS drivers don't seem to work in that area.  None of the drivers seem to support midi/sequencer at the moment.  Another thing I have noticed is that closing the display seems to reset the mixer levels to 0 (using ALSA).  Note that this is *not* putting the unit to sleep.

DVD

DVD is not a fully working thing in Linux yet.  This machine supposedly has hardware dvd decoding in the video chipset and clearly there are no Linux drivers available.  A good reason to keep Windows 98 on a small partition for now. In any case, you can still use regular CD's.  Data DVD's seem to work fine as well.  You must use the UDF driver to read the filesystem on a DVD.  You can get the UDF driver here.

PCMCIA/CardBus

I have had no problems with the pcmcia card services as shipped with RedHat 6.0 but I find that the driver with RedHat 6.1 is much more robust.  RedHat 6.1 ships with card services version 3.0.14.

External Monitor/S-Video Out

I have used an external monitor and it works perfectly fine in Linux including mirroring or just using an external monitor instead of the LCD panel.  I was able to drive both at 1024x768x32.  I have not tested the S-Video out with Linux yet.

Hard Disk

The hard disk does not seem to support DMA, or perhaps the driver does not support DMA with the ThinkPad's controller and disk.  I emailed Andre Hedrick but have not received a response regarding this.  The disk does work in 32 bit mode though.  This is set with /sbin/hdparm -c 1 /dev/hda.

Modem

The built-in modem is a Lucent WinModem.  This is clearly not ideal but on December 2, this driver was announced on linux-kernel.  The original file was posted here. This is a binary only driver and would not work with kernel version 2.2.5 which is shipped with RedHat 6.0 but does work with kernel 2.2.12.  I don't currently know which version(s) are required.  It works fine for me and I'm able to establish a ppp link, but I do get dropped interrupt errors on my PCMCIA ethernet cards (3c589) and it seems to make an annoying sound through the speaker.  It also seems to hose the sound card while it's in use.

USB

I have not had the opportunity to test the usb port yet as I don't have any usb devices or the driver installed.  I would appreciate if anyone with information regarding this can email me.

Keyboard/Mouse

There are many issues with the keyboard and mouse to consider.  There is only one external port so you can only use an external keyboard OR an external mouse, not both.  If you wish to use both, you have to get a PS/2 port splitter.  I have verified that an external keyboard works fine and can be plugged in at virtually any time.  I am also waiting for a response from IBM regarding the Easy Launch keys and the hardware CD controls on the front.  The third mouse button acts as the middle button of a three button mouse if you choose to emulate three buttons in X.  Another unsupported feature is the double-tap of the track-point acting as a click.  This is supported with the Windows 98 driver.
What is working now: I have finally made the numlock and numberpad work properly.  I also have the Windows keys enabled so you can use them as though they were F13 and F15.  As well I have got FN working as an additional modifier in X.  This means you can use a hotkey program to map FN-F1 and FN-F2 to your favorite help and battery programs, repsectively.  Also, FN seems to invert the numlock status, which is somewhat useful.  To enable this, you will need my .Xmodmap file and my ThinkPad keycode file.  Put the keycode file in /usr/X11/lib/X11/xkb/keycodes/ and the .Xmodmap file in your home directory.  I hope to merge all of this into my keycode file eventually to do away with the .Xmodmap file.  In your /etc/X11/XF86Config, you must change the XkbKeycodes and XkbRules settings to "thinkpad".  These settings are set properly in my XF86Config file.

External keyboard and mouse work fine (using a splitter on the PS2 port).  I did find that plugging a keyboard in while in X worked fine, but plugging a mouse in caused the mouse to freeze up.  A workaround is to switch to a VC (CTRL+ALT+F1) to insert the mouse, then switch back to X.  I will try to trace down the bug in the mouse driver eventually

        - NEW SECTION -
Apply this patch to GPM version 1.17.9 to get it to pick up the external mouse switch up automatically.  You must run gpm with the -y parameter for the new code to have any effect.  This does NOT make the external mouse automatically pick up in X so the above procedure still applies.  You should be able to switch back and forth between the external mouse and the built in mouse.
        - END NEW SECTION-

Other Issues

tpctl - The ThinkPad control tool - doesn't fully work with this model.   This model is apparently missing SMAPI which is what the tpctl tool uses.  You can use some limited functionality in it though.  Hopefully IBM will be so kind as to donate some information regarding system control and the 1460 as well so we can make it more compatible.  You can get tpctl here.
 
 

Other Links


 
 



Last Updated: 2/26/00
Author: George Staikos
Email: staikos@NOSPAM0wned.org   (the 0 is the number ZERO)