Installing Fedora 12 on a ThinkPad X40
Success Chart - Out of the box experience
This machines SMOLT profile is available here.
Item | Working | Notes | |
Installation | Local CD/DVD install | yes | |
Network Installation | yes | ||
USB Installation | yes | ||
Display | Laptop Screen (LVDS) | yes | |
VGA | yes | ||
Power Management | Software Suspend (hibernate) | no | LVDS remains off after resume (might be a backlight issue) |
Suspend to Memory (ACPI sleep) | no | Seems like it works, after some screen corruption on resume you get gnome-screensaver asking for a password, but you cannot login. After some debugging I found this is because of a segfault (segfault at 7a ip 00868006 sp b7519c1b error 6 in libaudit.so.1.0.0[868000+18000]). | |
Audio | yes | ||
Wireless | WiFi - Atheros | unknown | |
WiFi - Intel 2200BG | yes | ||
Bluetooth | yes | ||
Input | Keyboard | yes | |
TrackPoint | yes | Install gpointing-device-settings rpm for full configuration capabilities | |
Extra keys | partial | see ThinkPad Extra keys section below | |
Ports | Ethernet | yes | |
Modem | no | Requires closed-source driver. Install the slmodem rpm from the rpmfusion-nonfree repository, edit /etc/sysconfig/slmodem and set INTERFACE=ALSA and ALSA_DEVICE=hw:1,0 and optionally the country. | |
Serial | yes | Requires dock | |
IrDA | no | It seems the device is detected, but then it tries to register a second device and fails with "nsc_ircc_open(). can't get iobase of 0x2f8". As a result no device files are created in /dev | |
PS/2 Keyboard/Mouse | yes | Requires dock. Mouse works, but disables Trackpoint. | |
Parallel | unknown (should work) | Requires dock | |
USB | yes | ||
PCMCIA/Cardbus | yes | ||
SD slot | yes | 4GB SDHC flash card automatically detected. | |
Harddisk Active Protection | partial | There is now a hdapsd rpm, but it is not installed by default, and neither is the hdaps kernel module getting automatically loaded. And even after install it is not started automatically. Starting it manually (modprobe hdaps; hdapsd -d sda), does seem to cause the HDD heads to get parked, but it gives lots of warnings that seem to indicate it does not yet work as intended. | |
Ultrabay device removal | partial | Eject switch causes udev event, but no default udev script to handle the event to unmount filesystems in time. ata_piix does handle the removal and insertion of ATA devices. | |
TPM (security subsystem) | unknown | Not brave enough to mess around with it. You can try to install the tpm-tools rpm. | |
Dock removal | no | Dock removal is completely un-handled. doing so without first powering down is not recommended. |
Tested and Verified on Fedora 12
Information in this section has been tested and verified using Fedora 12.
Installation
Installation is straight forward; you can follow the generic Fedora install instructions.
Configuration
Kernel
It is recommended to edit /boot/grub/grub.conf and add hpet=force
to the kernel line. This will activate HPET (High Precision Event Timer), which will allow the CPU to sleep for longer periods and save power.
X Server - Intel 855GM
It seems that KMS has improved a lot with this release of Fedora. Both LVDS and VGA displays work in mirror and extended desktop mode, although extended desktop is rather limited as the Intel graphics chip is limited to just a 2048x2048 desktop size.
Compiz seems to work (needs more testing)
WiFi
Both the Intel 2200BG and Atheros wireless should work out of the box.
I did limited tested with the Intel 2200BG and it seemed to worked.
Atheros WiFi was not tested.
ThinkPad Extra keys
ThinkPad keys are handled by a mixture of the thinkpad_acpi, acpi button and acpi dock drivers.
Key | Function | Handled by | Event | Works | Notes |
Fn-F3 | lock screen | thinkpad_acpi | HAL | yes | |
Fn-F4 | suspend | acpi button | HAL | no | button works, but suspend fails with LVDS off on resume |
Fn-F5 | wireless | thinkpad_acpi | HAL | no | causes HAL 'wlan' event, but has no further effect. |
Fn-F7 | videomode | thinkpad_acpi | HAL | no | Attempts to cycles through various modes, but always comes back in mirror mode. |
Fn-F9 | undock | acpi button | HAL | no | causes event, but does not actually undock |
Fn-F12 | hibernate | acpi button | HAL | no | button works, but system does not work properly afterwards |
Fn-Home | brightness up | - | no | yes | no default OSD. Install the tpb rpm as a workaround. |
Fn-End | brightness down | - | no | yes | no default OSD. Install the tpb rpm as a workaround. |
Fn-PgUp | thinklight | - | no | yes | no default OSD. Install the tpb rpm as a workaround. |
Fn-Space | zoom | thinkpad_acpi | HAL | no | Known Xorg limitation, scheduled to be fixed in Xorg 1.8 with the new XKB2 extension in 2Q 2010 |
VolumeUp | Volume Up | - | no | yes | no default OSD. Install the tpb rpm as a workaround. |
VolumeDown | Volume Down | - | no | yes | no default OSD. Install the tpb rpm as a workaround. |
Mute | Mute | - | no | yes | no default OSD. Install the tpb rpm as a workaround. |
Access IBM | Vendor key | thinkpad_acpi | HAL | partial | No default action, but can be associated with gnome-keybinding-properties |
NextTab | Browser Next tab | standard keyboard driver | HAL | yes | |
PreviousTab | Browser Previous tab | standard keyboard driver | HAL | yes | |
Power | Power button | acpi button | HAL | yes | Need to press button for ~1 second to trigger event. Causes a dialog asking you what to do. |
Lid | Lid button | acpi button | HAL | yes | |
Dock | Dock eject button | acpi dock | no | no | Does not cause any event |
Ultrabay | Ultrabay eject switch | acpi dock | udev | no | Causes udev event, but missing handler. See below. |
Ultrabay
Ultrabay eject is not handled properly by default. Since there is no undock udev handler. This udev rule and eject script works for me: How to hotswap Ultrabay devices