http://modular.fas.harvard.edu/t42/
http://www.stanford.edu/~sanjiv/thinkpad/thinkpad.html
http://pmw.org/~gardnerj/Thinkpad/Install.html
Using sanjiv's. Differences:
CONFIG_MODVERSIONS: off
CONFIG_BLK_DEV_IDECD: kernel instead of module
E1000: kernel instead of module
E1000_NAPI: on
Networking support -> Bluetooth subsystem support: kernel
BT_L2CAP: kernel
BT_SCO: kernel
BT_RFCOMM: kernel
BT_RFCOMM_TTY: kernel
BT_BNEP: kernel
BT_HIDP: kernel
BT_HCIUSB: module (should be kernel)
BT_HCIUSB_SCO: module (should be kernel)
BT_HCIBT3C: module
PHONE: module
FB_VESA: off
FB_RADEON: on (as per sanjiv's addendum)
VIDEO_DEV: on (Video for Linux)
USB_OV511: on (Phillips webcam)
USB_PWC: on (Phillips Cameras)
REISERFS_FS: module
NFS_FS: module
NFS_V3: on
NFSD: module
NFSD_v3: on
NFSD_TCP: on
SMB_FS: module
CIFS: module
NOT DONE (need to know partition number)
Not using this, usin 2.6.8.1, due to ease of sanjiv's patches
This was enabled
Part of Sanjiv's stuff.
Applied.
Done.
Done.
Turned off.
Turned off.
On.
Off.
In kernel
Done.
Done via Sanjiv's patches.
NOT DONE (try with fb enabled RADEON first)
CONFIG_NVRAM is a module
Done (in red case)
Done
Didn't do this
Didn't do this
Couldn't do this (no printer)
Yup. Although it was not necessary.
Yup. Although I bought PM8 in the process (didn't try PM7).
Yup.
Done.
Device Boot Start End Blocks Id System
/dev/hda1 * 1 10 80293+ 83 Linux
/dev/hda2 11 4472 35841015 83 Linux
/dev/hda3 4473 4600 1028160 82 Linux swap
/dev/hda4 4601 19457 119338852+ f W95 Ext'd (LBA)
/dev/hda5 4601 19457 119338821 fd Linux raid auto...
(windows is on hdb)
Sanjiv's
config::
#fdisk -l
Disk /dev/hda: 40.0 GB, 40007761920 bytes
240 heads, 63 sectors/track, 5168 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
Device Boot Start End Blocks Id System
/dev/hda1 1 1002 7575088+ 7 HPFS/NTFS
/dev/hda2 * 1003 1022 151200 83 Linux
/dev/hda3 1023 1632 4611600 c Win95 FAT32 (LBA)
/dev/hda4 1633 5168 26732160 f Win95 Ext'd (LBA)
/dev/hda5 1633 3664 15361888+ 83 Linux
/dev/hda6 3665 4206 4097488+ 83 Linux
/dev/hda7 4207 4477 2048728+ 83 Linux
/dev/hda8 4478 4694 1640488+ 82 Linux swap
/dev/hda9 4695 4897 1534648+ 83 Linux
/dev/hda10 4898 5100 1534648+ 83 Linux
/dev/hda11 5101 5168 514048+ 83 Linux
#df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda10 1.5G 167M 1.3G 12% /
/dev/hda2 143M 8.5M 128M 7% /boot
/dev/hda5 15G 126M 14G 1% /home
none 378M 0 378M 0% /dev/shm
/dev/hda11 487M 8.1M 454M 2% /tmp
/dev/hda6 3.9G 3.0G 708M 82% /usr
/dev/hda7 2.0G 33M 1.8G 2% /usr/local
/dev/hda9 1.5G 549M 852M 40% /var
/dev/hda3 4.4G 1.3G 3.1G 30% /windows
Battery got run down.
Warty recognized and configured speedstep and atheros wireless properly. Fedora didn't do atheros (and I didn't bother setting it up).
Yup.
FC3 had no problems. Ignorance was bliss.
(Didn't do it (Ubuntu's kernel worked ok))
Done in fedora by editing /boot/grub/menu.lst
In Ubuntu, done by editing /boot/grub/menu.lst and adding these options to the kopt= lines, then running sudo update-grub
(swsuspend not in Ubuntu kernel, so giving up)
Yup
Nope. Don't need it under ubuntu. Reason: ubuntu uses powernowd instead.
sh-3.00# /sbin/hdparm -t /dev/hda1
/dev/hda1:
Timing buffered disk reads: 92 MB in 3.06 seconds = 30.08 MB/sec
NOT NECESSARY in Ubuntu
UNCONFIRMED
Not needed (cpufreqd.conf instead)
Working under Ubuntu
echo 1800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 1800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
echo 1800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
And, to set it at minimum speed::
echo 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
echo 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
using nothing whatsoever under Ubuntu works fine for me, so no need for this
This is unnecessary at least under ubuntu.
Laptop-mode is now enabled when the box is remvoed from ac power (via an acpi event)
Didn't use.
Didn't use
I used this as a jumping-off point but added stuff for Synaptics touchpad later.
Didn't bother.
Not using OSS drivers much, so couldn't confirm under Ubuntu.
Unconfirmed.
Just uncommenting just "glx" works fine.
Edit /etc/gdm/gdm.conf after "audit" to do same for gdm.
I got xfree86-driver-synaptics from apt and changed XF86Config according to its docs (including the trackpoint as a second input device and making it "alwayscore")
SubSection "extmod" Option "omit xfree86-dga" EndSubSection
to read:
Load "extmod"
This was
done.
Didn't bother.
<zwark> uncomment the universe lines in the sources list
<zwark> search for fglrx in synaptic
<mcdonc> aha...
<zwark> install the restricted kernel modules as well as the drives
<mcdonc> i'm on fedora now but may switch back
<zwark> set the flag I mentioned above to no (see below)
<zwark> then it "should" work
<mcdonc> i just got this thing today and i've been fucking with it all day
<zwark> So if you try again you will need: Non-free Linux 2.6.8.1
modules as well as fglrx-driver and maybe the hint with Option
"UseInternalAGPGART" = "no". If x comes up and fglrx-info says ATI
is used for rendering, everything is fine. Good luck
<mcdonc> you're the man!
This worked like a champ. I needed the following modules:
- fglrx-driver
- fglrx-control
- fglrx-driver-dev
- linux-restricted-modules (I used 2.6.8-1-3-686)
/etc/init.d/hotplug stop # very important echo 3 > /proc/acpi/sleep /etc/init.d/hotplug start & # this gets run when sleeping is done. /usr/local/bin/fakex # see http://modular.fas.harvard.edu/t42/
Fakex is required to prevent X from operating slowly on resume
In order to use SWSUSP2, you must append the line in your /etc/grub.conf file according to the instructions on the swsusp website. Then, you must run the suspend.sh script according to the swsusp website instructions, which will create the files /etc/suspend.conf and /usr/local/sbin/hibernate.
Everything worked fine for me after un-suspending except for wired ethernet and USB. The USB issue can be easily fixed by adding "ehci_hcd uhci_hcd" to SWSUSP_REMOVEMODS and SWSUSP_INSERTMODS in /etc/suspend.conf to force swsusp2 to remove the USB modules upon suspend and then reinsert them upon unsuspend. The ethernet adapter problem is a little more complex, but I have discovered that manually shutting down the eth0 interface (ifdown eth0) and them removing the e1000 module (rmmod e1000) before suspend will guarantee that the module will load properly when networking is restarted after unsuspending. For some reason, I cannot get this to work automatically (as in the case of USB). I will update here when I experiment more.
for patchfile in ../software-suspend-2.0.0.109-for-2.6.8.1/*; \ do patch -p1 < $patchfile; done
rmmod ehci_hcd echo -n "disk" > /sys/power/state; #SuspendToDisk modprobe ehci_hcd ;
echo 4 > /proc/acpi/sleep
I needed the ibm-acpi module from ibm-acpi.sourceforge.net and then I mapped an acpi event to the sleep button to go to sleep. Used the "acpi" example directory in ibm-acpi package as a replacement for the /etc/acpi directory that shipped with acpid.
I didn't have this problem.
CD/DVD
Didn't need to do this.
Didn't need to do this.
Did this.
Got k3b from apt under Ubuntu and it works fine.
Yup.
Couldn't find em.
Ubuntu (added "nvram" to /etc/modules)
Did this in a startup script in Ubuntu.
#!/bin/bash exec tpb --osd=on --verbose --thinkpad="/usr/bin/gnome-terminal"
Worked good.
Ubuntu: debian package requires makedep'd linux source
XXX not done: this isn't the right driver. I need a slmodem driver, I think? Actually no idea. The modem reports CXT from Windows, so who knows.
From apt for ubuntu
rfcomm0 {
device XX:XX:XX:XX:XX:XX;
channel 1;
comment "My T610";
}
Just used the normal network connection setup tools and then hand-edited the resulting wvdial.conf and came up with:
[Dialer ppp0]
Modem = /dev/rfcomm0
Baud = 57600
SetVolume = 10
Init2 = ATL2
Password = 123
Stupid mode = 1
Init1 = ATZ
Phone = *99***2#
Username = 123
Dial Command = ATDT
FlowControl = Software (XON/XOFF)
Tried halfheartedly but phone won't sent to machine with obexserver running.
Done. On reboot, VMWare wont stay configured. Fixed via http://www.braincells.com/debian/2004/05/
Done.
Done.
Firebird under Ubuntu is cool.
K3B seems to work.
Did it but probably didn't need to.