APM setup on a type 2379 ThinkPad T40

From ThinkWiki
Jump to: navigation, search

There have been varying reports of success or lack thereof using tphdisk; my experience, as noted in this and this mail to the linux-thinkpad list, is that a pure-Linux fix on a T40 using tphdisk and a hibernate file or partition, was not possible.

My ThinkPad is a T40, type 2379, bought in the US.

My theory is that this is because tphdisk just creates a file in the right format, but does not twiddle a bit in the BIOS to indicate that APM hibernation is now possible. In earlier ThinkPads, this bit would have been set during the factory setup of the default Windows install with APM hibernation file; but in modern ThinkPads, Windows XP is installed with ACPI software-suspend instead.

Note: the changes list for IBM's BIOS image used in the ThinkPad T40 gives an indication that this bug may be fixed with BIOS versions 3.08a or higher:

Symptoms corrected by version 3.08a (1RETD4WW):
(Fix) (Linux) Hibernation function does not work correctly under the partition environment created by lphdisk.

Given this, I'd suggest that if you're having trouble getting tphdisk to create a working hibernation file, a BIOS upgrade should be the first thing on your list.

How I Got It Working

If you're interested, I did manage to get it working after some trial and error. Here's how.

First off, the BIOS had to be at least 3.00c to support APM hibernation on my 2379 T40. Using the earlier, factory-installed BIOS, the SAVE2DSK.BIN file was supposedly created successfully by both tphdisk and IBM's utility, but hibernation failed.

In order to upgrade the BIOS, I needed to install a version of Windows earlier than Windows XP to run the BIOS upgrade application successfully. It wouldn't complete from IBM's default XP installation, or from any version of DOS (it's a Win32 application). I used Windows 98.

Once I did that, however, I could boot the IBM hibernation-file creation utility diskette. I had no floppy drive; however, during this process I discovered that one can burn a floppy disk image as an ISO image to a CD-ROM, as described on this page.

On booting from this CD-ROM, I could run the tool, and it created the SAVE2DSK.BIN file successfully. (Be sure to see this page for details on sizing.)

Also worth noting that I had to use a FAT32 volume -- using a file on a FAT16 volume is no longer an option with today's large RAM installations, since neither tphdisk nor IBM's utility could create working 512MB SAVE2DSK.BIN files in a FAT16 filesystem due to size limits in that filesystem.

Justin Mason, jm at jmason dot org