Installing Slackware/11.0 on a ThinkPad T42

From ThinkWiki
Revision as of 23:43, 12 June 2007 by Frobnitzem (Talk | contribs)
Jump to: navigation, search

As the name suggests, this page documents a start-to-finish installation of Slackware 11 on a thinkpad T42. This is a work-in-progress, so check the history page for mistakes I made (if you are that type).

System Information

Gathering system information is like mice storing away for winter.

CPU Pentium M, 1.7 GHz
Monitor resolution 1400x1050
Graphics ATI Mobility Radeon 9600
Network Intel Pro/1000 MT Mobile Connection
Intel Pro/Wireless 2200BG
CD/DVD Matshita DVD-RAM UJ-812
PCMCIA TI PCI-4520 Cardbus Controller
Sound AD1981B(AC'97) (module snd-intel8x0 works on 2.4 kernel)
IR IBM ThinkPad FastIR
HDD Intel 82801DBM UATA-24CA for Fujitsu MHT2080AH

These sections follow in the order I installed them, with some of the later customizations do-able while the kernel is recompiling.

Installation proper

Grabbed a DVD install of Slackware 11 [1]. It failed to boot (maybe 2.4.33 kernel shipped doesn't recognize the drive?). Grabbed install CDs ibid. Sat through package selection process. Created a second user account (useradd).

Found out that sound is muted by default. Fix:

  1. amixer set Master 70 unmute
  2. amixer set PCM 70 unmute
  3. amixer set CD 70 unmute
  4. alsactl store

Installed all my favorite software, not worrying about how to make the wifi work for now or optimizing video performance.

Updating the Kernel to 2.6.x

As you may know, the wifi driver is in the 2.6.4 or newer kernels. This necessitated more work on my part and while I was at it I may as well recompile some respectability into my kernel.

  1. cd install-media/extras/linux-2.6.17.13
  2. pkgtool
    1. no to kernel itself (patience grasshopper)
    2. yes to source (modules and/or headers optional)
  3. cd /usr/src/linux yes, the symlink had been changed to 2.6
  4. install suspend2 kernel patch
    1. bzcat /path-to/suspend-2.2.8.2-for-2.6.17.13.patch.bz2 | patch -p1
  5. cp .config Default.config
  6. make mrproper
  7. make menuconfig
    1. See options section, below.
    2. strangely, make complained about --no-stack-protector, so I deleted that option

Suspend2 Kernel Patch

The last kernel patch for 2.6.17.13 released is 2.2.8.2-for-2.6.17.13 [2]. This requires the suspend2-userui version 0.6.4 [3]. I used the latest hibernate script, since this did not have any version disclaimers...

Kernel Options

Make sure you save your config. options somewhere safe, since you will probably need to recompile and/or reinstall the kernel sources a couple of times to get all the options right. In order to avoid compile-time errors, use make mrproper before make modules, but note that make mrproper deletes .config.

  • Processor Family = Pentium M (scroll down)
  • ACPI Options
    • CPUFreq driver = Intel Enhanced SpeedStep
      • ACPI Processor P-States = fall-back module
  • IrDA
  • Added reiserfs into the kernel to avoid messing with initrd
  • Disabled all graphics modules in Devices->Graphics support except ATI Radeon display, which I built as a module (so as not to interfere with ATI's driver later)

Recompile kernel overnight.

(make && make modules) ||  echo "poo-bear"

Install the thing.

make modules_install &&  make_install

realize that slackware is still using lilo, so install has just replaced vmlinuz. Copy original to unique name and symlink, then install new lilo menu.

cd /boot
cp /usr/src/linux/arch/i386/boot/bzImage vmlinuz-2.6.17.13-Farfrumlernen
rm vmlinuz
ln vmlinuz-2.6.17.13-Farfrumlernen vmlinuz
vi /etc/lilo.conf 
lilo
reboot # with fingers crossed

Make sure you add another image="vmlinuz.old" to the file just incase the worst should happen... And hey, why not add append = "acpi_sleep=s3_bios" from SUSE on T42 while you're at it! My system hung on bootup with my first try here because it couldn't mount some filesystems. I added the noauto option to appropriate drives in /etc/fstab and everything was peachy again.

WiFi

Follow the install from source options, and don't forget to patch ipw2200-2.tgz because you're going to compile it anyway. I mistakenly used the development version of ieee802011-1.2.17 (instead of 1.2.15) with ipw220-1.2.0 and ipw2200-fw-3.0, but it is working anyway.

  1. ieee802011-1.2.15
  2. ipw220-1.2.0
  3. ipw2200-fw-3.0 (contents of folder ipw2200-fw-3.0 not the folder itself goes in /lib/firmware)


In order to test wifi and make the thing go once it is working, I installed the Wireless Assistant package.

Some Customization

Added suggested sections to /etc/modules.conf and /etc/modprobe.conf from Ipw2200, IrDA, and others.

/etc/modules.conf

alias irda0 nsc-ircc
options nsc-ircc dongle_id=0x09 io=0x2f8 irq=3 dma=3
options ipw2200 led=1

/etc/modprobe.conf

options ipw2200 disable=1

Followed instructions on How to configure acpid to create scripts in /etc/acpi.

Muse at all the time I could spend on making special keys work.

X11 Configuration

Installed ATI's own Mobility Radeon driver installer [4].


Additions:

  • Option "DPMS" in Monitor section.