Installing Fedora Core 5 on a ThinkPad T60
Installation of Fedora Core 5 (Bordeaux) on a ThinkPad T60 (2007-46G). The installation works fine, but the system hangs during the first boot. It can only be circumvented by booting the rescue system and modifying a Fedora startup file.
What works out of the box
- Network card (e1000 module)
- Keyboard light and brightness control (not controlled by the OS)
- Dual CPU (uses SMP kernel by default)
- Graphics Card (recogized as ATI unknown device 7149)
- SATA controller (in AHCI mode)
What needs to be fixed post-install
- System boot
- Fingerprint Scanner
- Software Suspend
- PCMCIA Slots (at least lspci shows Texas Instruments CardBus bridge)
- Monitor out
Getting the system booted
Boot from the Fedora Core 5 CD and enter rescue mode (linux rescue).
Edit the file /etc/sysconfig/modules/udev-stw.modules and delete parport_pc parport lp (don't forget to chroot into /mnt/sysimage or adjust the path of the edited file). So the for loop will iterate only over nvram and floppy.
I also disabled the parallel port in the BIOS, but it does not seem to be necessary. Now reboot and enjoy the first clean boot of your Fedora Core 5 on your T60.
If anybody has an idea why the system hangs while trying to load this modules, please let us know.
Activating the Fingerprint Scanner
FC5 recognizes the integrated fingerprint scanner as an USB device. All you have to do is follow the instructions of How_to_enable_the_fingerprint_reader. The script works, but make sure you have installed all necessary packages (like gcc-c++, pam-devel, ...). Within the script you are asked to swipe the finger, it install all necessary entries into the /etc/pam.d files and it works afterwards :-)
Controlling the fan and system LEDs
The LEDs can be controlled out of the box. Type "cat /proc/acpi/ibm/led" to see the detailed usage. Unfortunately there is no mapping between number and LED. Just try out and reset it if necessary.
(For example "echo 7 blink > /proc/acpi/ibm/led" will make the rightmost (crescent) LED blinking.)
Add the following line to your /etc/modprobe.conf: options ibm_acpi experimental=1
After the next reboot you will have a new entry in your proc-fs: /proc/acpi/ibm/fan
Now type "cat /proc/acpi/ibm/fan" to see the current status (including speed). Feel free to control your fan with "echo [disable|enable] > /proc/acpi/ibm/fan". (But remember: it's at your own risk! I wouldn't switch off the fan during kernel compilation ;-) )
In my T60 (2007-B12), the modem is a Connexant winmodem, linked together very closely with the High Definition Audio Soundcard.
I got it working with the linuxant HSF driver (download). I had to recompile my kernel without the 4KSTACKS option (in the Kernel Hacking section), otherwise, my system paniced during boot when the HSF driver was loaded. Still I get a freeze when I try to suspend with the HSF driver loaded (I have to
rmmod snd_hda_intal hsfhda) --- but I yet cannot resume with 2.6.17 anyway.
The wireless IPW3945 card works with the drivers available from ipw3945.sourceforge.net or Intel. Before the driver compiled, I had to first update ieee80211 kernel support from the version 1.1.7-git (coming with 2.6.17) to 1.1.14 available from ieee80211.sourceforge.net.
I updated the ieee80211 directly in the kernel source tree with
make KSRC=/usr/src/linux-2.6.17_FC5-custom patch_kernel (in ieee80211-1.1.14).
Then, ipw3945 works fine. Note that you have to install all the three parts:
- ipw3945.ko into /lib/modules
- ipw3945.ucode into /lib/firmware
- ipw3945d into /sbin (and run it).
This was quite tricky to get working. The key issue is that the ATA hard drive is controlled by the SATA kernel module --- and kernel modules are not yet available at the time SoftwareSuspend would try to resume from the swap partition. The hard drive is not available yet at that time, and the suspended state is thus ignored and the computer boots instead of doing a resume.
To get Software Suspend working, you have to compile scsi_mod.ko, sd.ko, libata.ko, and ahci.ko into the kernel. (Options CONFIG_SCSI, CONFIG_BLK_DEV_SD, CONFIG_SCSI_SATA, and CONFIG_SCSI_SATA_AHCI have all to be changed from "m" to "y").
On a DuoCore CPU with SMP enabled, you also need CONFIG_HOTPLUG_CPU=y (this allows to switch into Uniprocessor mode, needed for SoftwareSuspend). Works fine for me afterwards. (Note: I got it working only with 2.6.17-1.2174; I am still getting unresolved problems (a sudden reboot at the end of a resume) in 2.6.17-1.2187.
- This guide is listed at the TuxMobil Linux laptop and notebook installation survey (IBM/Lenovo).