Apple Titanium Powerbook IV

The TiBook IV was the last model before Apple launched the 12" and 17" Aluminium PowerBooks, It's also the last model that comes with a Radeon Mobility graphics chipset, as Apple switched to the nVidia GeForce4 chipset with the new models.

This page contains notes from my adventures into the world of the PowerPC, specifically the TiBook hardware, and how I got the machine to behave how I wanted. I use Debian, and much of the information here comes from the help of the members of the debian-powerpc mailing list.


The processor is a 1GHz G4, which can run at either 1GHz or at 667MHz. At boot, your processor will be probably running in powersave mode. You can change this by using the following command (as root):

          minimum CPU frequency  -  maximum CPU frequency  -  policy
CPU  0      1000000 kHz (100 %)  -    1000000 kHz (100 %)  -  performance
This tells the kernel to run CPU 0 at a minimum of 100% of top speed, at a maximum of 100% of top speed, and lean towards performance when trying to pick a speed between those two. Most of that is obviously redundant in this case.

To switch back to powersave mode, use:

          minimum CPU frequency  -  maximum CPU frequency  -  policy
CPU  0       667000 kHz ( 66 %)  -     667000 kHz ( 66 %)  -  powersave


Benjamin Herrenschmidt maintains the PowerMac port of the Linux kernel (i.e. the PowerPC port specifically tuned to Apple hardware). You can get a copy via rsync by doing

mkdir -p ~/src/linux/benh
rsync -avz --delete ~/src/linux/benh

Build the kernel using Manoj Srivastava's make-kpkg, by changing into the kernel directory you've just rsync'd:

make-kpkg --revision=hostname.1 --config=menuconfig kernel_image
Then install the kernel-image-KERNELVERSION package that's now sitting in your parent directory.


You'll want to install these packages from Michel Daenzer's apt repository (deb ./): xserver-xfree86-dri-trunk, drm-trunk-module-src, xlibmesa3-gl1-dri-trunk.

Unpack the drm-trunk source in /usr/src/drm-trunk.tar.gz, then build the kernel modules by going into the source tree for the benh kernel you just built, and type make-kpkg modules_image, then install the drm-trunk-module-KERNELVERSION package that's now sitting in the parent directory.

If you have video artefacts on the console when you exit from X, like rows of dots, and the console doesn't scroll at the last line, then you probably aren't using the framebuffer device for X. Set

Option "UseFBDev" "true"
in your XF86Config-4 Device section.

The above is no longer true for recent versions of the drm-trunk and kernel (2003/08/28), in fact to get the external display working you mustn't specify UseFBDev at all.

To get suspend working, you need to make sure you have APM emulation in the kernel. Set CONFIG_PMAC_APM_EMU=y to compile it into the kernel, or build it as a module and load it at boot time. Make sure /dev/apm_bios exists:

crw-rw----    1 root     root      10, 134 2003-01-27 11:36 /dev/apm_bios
If it doesn't exist, then
then check for the following line near the top of the XFree86 log (after restarting X, of course)
(II) Open APM successful

I found that XFree86 and the radeon driver can't actually recover from a sleep unless the following option is also set in your XF86Config-4 Device section:

Option "AGPMode" "4"


So, the TiBook only has one mouse button, how do you right click?

In /etc/sysctl.conf, you can set kernel options (of the same name as they appear in the /proc filesystem). So, make sure you have CONFIG_MAX_EMUMOUSEBTN=y set in your kernel, and add the followin lines to /etc/sysctl.conf


This sets up your F11 and F12 keys as the middle and right mouse buttons.


Don't put your TiBook in the oven.

Further Reading describes a Yellow Dog Linux installation on the same hardware. describes more general Debian PowerBook installations. describes Branden Robinson's method to install Debian on an iBook without using any physical media, this works for the PowerBook too. tells of Matthias Schmidt's experiences installing Debian onto one of the new 12" PowerBooks.

Jamie Wilkinson
Last modified: Sun Nov 16 17:01:38 EST 2003