Wednesday February 22, 2012 19:56:01 UTC
Lenovo Thinkpad T61p: Custom kernel configuration via Slackware - kernel 2.6.30

Introduction

This document will cover how to setup the latest available kernel as of this writing via Slackware on a Lenovo Thinkpad T61p. I will provide a kernel configuration that already has the necessary support built-in for the devices found in this laptop. The kernel will be optimized for the Core 2 architecture.

Kernel configuration

The latest kernel as of this writing is 2.6.30. Below are the links for the kernel configurations. Otherwise you can use wget as shown further down in the step-by-step process.

Link for the linux-2.6.30 32-bit kernel configuration: Thinkpad T61p 32-bit kernel config

Link for the linux-2.6.30 64-bit kernel configuration: Thinkpad T61p 64-bit kernel config

Here are the commands to download, configure, and build the kernel.
cd /usr/src

ftp ftp.kernel.org
login: anonymous
password: (blank)
cd /pub/linux/kernel/v2.6
get linux-2.6.30.tar.bz2

tar xjf linux-2.6.30.tar.bz2
cd linux-2.6.30

Slackware 32-bit: wget http://www.linuxforge.net/docs/hardware/files/t61p/config-2.6.30-32
Slackware 64-bit (SLAMD64): wget http://www.linuxforge.net/docs/hardware/files/t61p/config-2.6.30-64

mv config-2.6.30-32 .config  (config-2.6.30-64 for 64-bit systems)
make menuconfig 
  -> Exit and save
make bzImage  (Add -j(number of processors) for a parallel build)
make modules  (Add -j(number of processors) for a parallel build)
make modules_install

Slackware 32-bit: cp arch/x86/boot/bzImage /boot/linux-2.6.30
Slackware 64-bit (SLAMD64): cp arch/x86_64/boot/bzImage /boot/linux-2.6.30

cp System.map /boot/System.map-2.6.30
cp .config /boot/config-2.6.30
cd /boot
rm System.map
ln -s System.map-2.6.30 System.map
rm config
ln -s config-2.6.30 config

vi /etc/lilo.conf
We need to add the kernel to the lilo.conf file. Here is how I have my lilo.conf setup currently.
boot = /dev/sda
lba32
append=" vt.default_utf8=0"
prompt
#timeout = 300
#vga = ask
vga = 0x37D

image = /boot/linux-2.6.30
   root = /dev/sda4
   label = Linux-2.6.30
   read-only
The relevant part for the new kernel in lilo.conf is the image and lines below. Set the root to your root device. You can find this in /etc/fstab with the line starting with a device and a mount point of /. I would recommend leaving in the existing kernel configuration in lilo.conf so that if for some reason the kernel does not work, you can load your old kernel. Execute lilo to load the new boot loader.
lilo
You can now reboot and load your new kernel. This kernel configuration does support the Intel 4956AGN wireless card included with the Thinkpad T61p among other things. You could also apply this kernel configuration to another distribution. One of the differences would be with having to update the bootloader accordingly. For example, many distributions come with Grub rather than Lilo so you would have to set that bootloader up to load this new kernel configuration.