Linux on the IBM ThinkPad R40 laptop

with the Mandriva 2006 distribution

5 December 2005


Specifications

Summary

Legend:
OK
: works out of the box

OK
: works after some configuration
Subsystem
Hardware
Status with Mandriva 2006
Graphics
15" active matrix TFT, SXGA+ (1400 x 1050)
ATI Mobility Radeon 7500 AGP, 32 MB
OK : max. resol. 1400x1050 works fine; 3D acceleration works
Sound
Intel 82801DB AC'97 Audio Controller (Analog Devices chip) OK
Hard disk
IDE Hitachi DK23EA-40B, 40 GB OK : full support of DMA
Tracking  devices
IBM UltraNav: trackpoint + touchpad
OK : both touchpad and the trackpoint can be used
Ethernet
Intel PRO/100 VE OK
Wireless (WiFi)
Intel PRO/Wireless LAN 2100 3B Mini PCI Adapter OK
Modem
Audio Modem Riser (AMR) from Agere Systems (operates under the Intel AC'97 audio controller) OK
PC Card (PCMCIA)
CardBus controller Texas Instrument PCI-1520 OK
USB 2 ports, Intel 82801DB controller OK
Firewire
1 port IEEE 1394, Open Host Controller Interface (OHCI) Texas Instrument TSB43AB21 OK ? (not fully tested)
Infrared
1 port, Intel 82801 DBM LPC Interface Controller not tested
CD writing HL-DT-ST RW/DVD GCC-4240N, CDRW: 24x/10x/24x OK
DVD playing HL-DT-ST RW/DVD GCC-4240N, DVD: 8x OK
Power management

OK (except for suspend to disk)
Control buttons (screen light, sound level)
OK

Software  (from Mandriva 2006)

Installation of Mandriva 2006

Immediately after switching on the power, when the screen with the IBM logo appears, press the blue button "Access IBM". In the menu on the left, select "Setup". Insert the DVD or the CD-ROM 1 of the Mandriva 2006 in the CD/DVD driver and double click on "ATAPI CD-ROM drive". The computer is now booting on the CD-ROM and the Mandriva Linux installation procedure starts.

The Mandriva Linux installation proceeds in a graphic mode and is really straightforward. At the end, a summary appears, in which only the graphical displays appears not to have been configured. Click on the red tag "configure", then select the following:
The log file of the installation can be found in /root/drakx/install.log

Post install configuration:
I had to suppress the packages kat-0.6.3-19mdk and libkat0-0.6.3-19mdk because kat was triggering exessive activity of the deamon kded. kat is an application for KDE designed to index files (similar to Google Desktop Search) and it can be suppressed safely.

Graphics (X-window)

Hardware: 15" active matrix TFT, SXGA+ (1400 x 1050), ATI Mobility Radeon 7500 AGP, 32 MB
Linux software: Xorg 6.9

Works nicely (Xorg configured by the install to use the driver radeon, here is the resulting xorg.conf file). The display uses the 1400 x 1050 resolution and is very nice on the high qualitify ThinkPad LCD screen.
Moreover 3D acceleration works, as shown by these pieces of the output of glxinfo command:
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
As a test, PlanetPenguin Racer runs very smoothly, as well  as  glxgears.  Another sign of good behavior of 3D acceleration is provided by the impressive increase of performance when activating the "hardware rendering" option in the 3D visualization software OpenDX.

Sound

Hardware: SoundMax, Intel 82801DB AC'97 Audio Controller (Analog Devices chip)
Linux software: kernel 2.6.12 module snd-intel8x0 (ALSA sound driver)

Works without any trouble.
The loudspeaker buttons at the upper left of the keyboard can be used to control the sound level.

Hard disk

Hardware: Hitachi DK23EA-40B, 40 GB, IDE
Linux software: kernel 2.6.12

Works without any trouble; the DMA (Direct Memory Access) is used, which increases the speed of disk access to around 20 MB/s. To check wether DMA is on, type the command (being su):
hdparm /dev/hda
The output must contain the line
using_dma    =  1 (on)
To check the access speed, type
hdparm -t /dev/hda
The output is
/dev/hda:

 Timing buffered disk reads:   72 MB in  3.01 seconds =  23.95 MB/sec

Tracking devices

Hardware: touchpad, trackpoint (IBM UltraNav system)
Linux software: kernel 2.6.12

Works out of the box. Both the touchpad and the trackpoint can be used.

Ethernet

Hardware: Intel 82801BD PRO/100 VE (MOB) Ethernet Controller
Linux software: kernel 2.6.12 module eepro100

Works out of the box.

Wireless (WiFi)

Hardware: Intel PRO/Wireless LAN 2100 3B Mini PCI Adapter
Linux software: kernel 2.6.12 module ipw2100; wireless-tools 28

Works out of the box.
To set up the wireless connection, simply use the network manager of drakconf. It is better to set a new profile first: click on Profile in the menu bar at top of the window and create a new profile WIFI (let's  say). Then, click again on the Profile menu and select this new profile (by default the profile just created is not selected).  Then click on 'configure a new connection' in the main panel and select 'wireless' for the type of connection.

Modem

Hardware: Audio Modem Riser (AMR) system: Agere Systems modem working through the audio card Intel AC'97
Linux software: kernel 2.6.12 module slamr; slmodemd; kppp

As for most (all ?) laptops, the internal modem of the ThinkPad R40 is not a real modem, but a "soft modem" (also called a "winmodem"), i.e. a device which depends on software to
perform the functions traditionally handled by modem hardware. For further details, see the Linmodem web page.

In the present case, the required software is provided by the Smart Link modem driver. To set up the modem connection, follow these steps:
1/ Launch the system configuration tool drakconf. In the network menu, create a new internet connection of type modem. This will trigger the installation of the following rpms: kdenetwork-kppp, kdenetwork-kppp-provider, ppp and libcap0.
2/ Install the rpm dkms-slmodem (for instance via the software manager of drakconf)
3/ Create the script file /usr/local/bin/modem with the following content:
su -c 'ifconfig eth0 down; ifconfig eth1 down; /usr/sbin/slmodemd /dev/slamr0'
kppp &
exit
and make it executable by typing chmod +x /usr/local/bin/modem.
4/ Reboot the computer. Then you will be able to launch a modem connection by typing the command modem

PCMCIA

Hardware: CardBus controler Texas Instrument PCI-1520
Linux software: kernel 2.6.12 modules yenta_socket, pcmcia

Works out of the box. Tested on a 3Com 3c575 Fast EtherLink XL ethernet card.

USB 

Hardware: Intel 82801BD USB
Linux software: kernel 2.6.12 modules uhci_hcd, ehci_hcd, usbcore

Works out of the box. Tested with a digital camera Canon PowerShot A40 and FLPhoto. Selecting Album->Import->Camera in FLPhoto resulted in an automatic detection of the Canon PowerShot A40. The photos could be transfered without any trouble.
Also tested with a USB memory stick: once plugged, the memory stick immediately appears as a subdirectory of /mnt without having to configure anything by hand.

FireWire (IEEE 1394)

Hardware: Open Host Controller Interface (OHCI) Texas Instrument TSB43AB21
Linux software: kernel 2.6.12 modules ohci1394, ieee1394, eth1394

Seems to work, as shown by the following lines in /var/log/messages:
kernel: ohci1394: $Rev: 1250 $ Ben Collins <bcollins@debian.org>
kernel: ACPI: PCI Interrupt 0000:02:07.0[A] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11
kernel: ohci1394: fw-host0: OHCI-1394 1.1 (PCI): IRQ=[11]  MMIO=[c0206000-c02067ff]  Max Packet=[2048]
kernel: eth1394: $Rev: 1247 $ Ben Collins <bcollins@debian.org>
eth1394: eth0: IEEE-1394 IPv4 over 1394 Ethernet (fw-host0)

but I do not have any device to test it further.

CD writing

Hardware: HL-DT-ST RW/DVD GCC-4240N, CDRW: 24x/10x/24x
Linux software: cdrecord 2.01.01, k3b 0.12.3

Works out of the box. k3b works perfectly.

DVD playing

Hardware: HL-DT-ST RW/DVD GCC-4240N, DVD: 8x
Linux software: kaffeine 0.7, totem 1.0.4

Works out of the box. 

Power management

Linux software: acpid 1.0.4

Control keys:
Note that I have changed the BIOS parameters to disable screen blanking in the following way: at power switch on, when the screen with the IBM logo appears, press the "Access IBM" blue key. Then double-click on "Start Setup Utility", select "Config", and then "Power". Set the various parameters to these values:

Power Mode for AC [Customized]
Power Mode for Battery [Customized]
Customized
Processor Speed [Fixed Max]
Suspend timer [Disabled]
LCD off timer [Disabled]
HDD off timer [5 Minutes]
Hibernate by timer [Disable]
Low battery action [Suspend]
Suspend when LCD is closed [No suspend]

Control buttons

Conclusion

The IBM ThinkPad R40 is a very nice laptop for Linux: every piece of hardware is supported, including the wireless card and the internal modem. Moreover the machine is very quiet and the SXGA+ (1400 x 1050) LCD screen is of very good quality. Regarding the Linux distribution, it has been found that Mandriva Linux 2006 PowerPack provides all the necessary packages to fully support every piece of hardware (this contrasts with a previous version, Mandrake 9.2, for which it had been necessary to download some extra softwares for the wireless card and the internal modem, as described in this page).

Usefull links


Eric Gourgoulhon <eric.gourgoulhon__at__obspm.fr>, LUTH, CNRS, Observatoire de Paris, 92195 Meudon, France.
Last modified on 5 December 2005.