Installing Fedora 14 on a ThinkPad X40
NOTE!
This is based on Fedora 14 with the default GNOME desktop. Your experience with KDE may be different.
Help needed
Not all models of this ThinkPad are equal, you may have a different WiFi adapter, or some options I did not have. If you tested them, please add their status down below.
|
New in this release
Fixed or new in this Fedora release, with regards to this model ThinkPad is the following;
- tpb is no longer part of Fedora, so no OSD any more for volume and brightness keys
- Undock handling with this model ThinkPad is now fixed
- Compiz with just the LVDS display works
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) | yes | |
Suspend to Memory (ACPI sleep) | yes | ||
Audio | yes | ||
Wireless | WiFi - Atheros | yes | |
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=modem:1 and optionally the country. Then run "chkconfig slmodem on; service slmodem start" and point your dialer to /dev/ttySL0 | |
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". | |
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) | yes | Enable security chip in BIOS, then "yum install tpm-tools", then "modprobe tpm_atmel; service tcsd start; tpm_version" works. | |
Dock removal | yes |
Tested and Verified on Fedora 14
Information in this section has been tested and verified using Fedora 14.
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
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.
Issues
- Unknown physical LVDS display size (reported as 0mm x 0mm)
- Cycling through external display modes with Fn-F7 only works, if the combined horizontal resolutions of the LVDS and external display combined does not exceed 2048 pixels. Since the LVDS (ThinkPad LCD) is 1024 pixels horizontal on a X40, that means the external display cannot have more then 1024 pixels either or otherwise Fn-F7 will fail.
- Xv (Xvideo) when in mirror mode works on the external display, but not the LVDS
- Hotplugging an external VGA display with Compiz enabled causes corruption - fixed after installing updates
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 |
FnF3 | lock screen | thinkpad_acpi | HAL | yes | |
FnF4 | suspend | acpi button | HAL | yes | |
FnF5 | wireless | thinkpad_acpi | HAL | partial | Switches WiFi on and off, has no effect on Bluetooth |
FnF7 | videomode | thinkpad_acpi | HAL | partial | Fails if external monitor >1024 horizontal |
FnF9 | undock | acpi button | HAL | no | causes event, but does not actually undock |
FnF12 | hibernate | acpi button | HAL | yes | |
FnHome | brightness up | - | no | yes | no OSD |
FnEnd | brightness down | - | no | yes | no OSD |
FnPgUp | thinklight | - | no | yes | no OSD |
FnSpace | zoom | thinkpad_acpi | HAL | no | Known Xorg limitation, scheduled to be fixed with the new XKB2 extension, whenever that may be. |
VolumeUp | Volume Up | thinkpad_acpi | no | yes | no OSD. Hardware and Software volume controls are independent from each other. |
VolumeDown | Volume Down | thinkpad_acpi | no | yes | no OSD. Hardware and Software volume controls are independent from each other. |
Mute | Mute | thinkpad_acpi | no | yes | no OSD. Hardware and Software mute controls are independent from each other. |
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 | udev | yes | |
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
Untested on Fedora 14
- Atheros WiFi
- Parallel port