Kodama is my Fujitsu P7120 Lifebook. This page details everything I know about getting this machine working with Debian. I run unstable on my laptop, but these instructions will also work for stable. I recommend running at least kernel 2.6.18; earlier kernels had problems which are no longer documented on this page.

Other pages about the same thing are by Emmanuel Fleury and Lars Wirzenius.

I posted some general thoughts about the machine's hardware to my blog in new laptop.

Installation

The big thing to be aware of during installation is that the wireless card isn't supported by the installer due to needing non-free firmware.

Otherwise, the install should be fairly uneventful. Mine wasn't so much since I used a daily build of the debian-installer, which had some bugs. I described my installation in detail in an installation report.

Wireless

My laptop has the Intel Pro/Wireless 2915ABG, which uses the ipw2200 module. This needs non-free firmware to work; I downloaded the firmware from http://ipw2200.sourceforge.net/firmware.php.

X

Make sure that X is configured to use the i810 driver, not vesa. If using Debian unstable, with the modesetting version of the driver, that's all that is needed now.

If using Debian stable, some extra work is needed to get X to run at the full 1280x768. Install the 915resolution package, edit /etc/default/915resolution and set:

MODE=4d
XRESO=1280
YRESO=768

Also, make sure that X is configured to use the synaptics touchpad driver.

CPU scaling

I installed cpufreqd and was good to go.

CD

CD works ok with current kernels, less well with 2.6.17 and below. Everyone is using newer kernels now, so no problems.

LCD brightness controls

The best thing to use is the xbacklight program, or other program that supports the RandR brightness extensions, which can control the LCD brightness with smooth fading between brightnesses. Needs a recent version of the X server.

If the xbacklight doesn't work correctly, this will fix it. Needs version 2.2.0 or above of X:

xrandr --output LVDS --set BACKLIGHT_CONTROL legacy

Hibernation

Install the hibernate package.

Hibernating with sound playing didn't seem to work well with older kernels, though this might be fixed. I configured hibernate to pause audio players first:

PauseAudio yes

If running stable without the modesetting X driver, for resuming to work you need to make it run 915resolution before switching back to X:

SwitchToTextMode yes
Runi915resolution yes

With stable's X, to get suspend to ram working too, the main problem is to get the backlight to turn back on when it's resumed. One option is to use vbetool, which will manage everything else, but will not turn the backlight on. You can use the function keys to change brightness to turn it back on however. An alternate approach is to not use vbetool and just dump/load video memory. I'm using this approach now, after writing a VideoDump hibernate scriptlet, using this config:

#VbetoolPost yes
#RestoreGFXBrightness yes
EnableVideoDump yes

With the modesetting video driver in unstable, no hacks should be needed. Just pass acpi_sleep=s3_bios on boot. (Thank you, Keithp for debugging this!)

Sound

Sound works ok with no configuration, using alsa. I haven't had much luck recording from the mics, either something is wrong or they are not any good. I was only able to record my voice if I spoke directly into one of them.

To allow multiple apps to play sound at once, I enabled dmix as described here. Note that I had to change one line, from "hw:1,0" to "hw:0,0".

Volume controls

The function keys that are supposed to control and mute the volume don't work in linux. To get them functional you need a program like hotkeys that can listen to the keypresses and do something appropriate.

I patched hotkeys to support using alsa. With the patch you can configure hotkeys to control both the Internal Speaker and Headphone alsa volume controls. Set up the laptop to boot up with the Headphones muted. You can then use the mute hotkey to toggle between sound going to the external speakers, and to the headphones.

I also patched hotkeys to support RandR backlight control.

My ~/.hotkeys/p7120.def can be downloaded from here and ~/.hotkeys/hotkeys.conf from here

Battery

The extended battery pack gets 5+ hours with minimal tuning. Haven't felt the need to add a bay battery pack yet.

powertop can help tweaking things to save a lot of power.

My battery fairly quickly (within 2 months) was only charging to 92% full. After a year, it was only charging to ~50% full. This soon dropped to 30%, and I had to buy a new battery.

Other p7120 users report similar battery issues. This sorta sucks. Perhaps newer models of the battery behave better. Note that some batteries shipped with some versions of this laptop are eleigible for replacement, though mine was not.

Hard drive

My hard drive died after 2+ years. It was out of warantee. Had to get a new one. :-( I noticed rather a lot of dust and gunk had collected in the hard drive bay, you might want to remove and clean yours from time to time.

Modem

I've successfully used the builtin modem, as follows:

  • Install sl-modem-daemon
  • Edit /etc/default/sl-modem-daemon and set SLMODEMD_DEVICE=modem:0
  • /etc/init.d/sl-modem-daemon start
  • Use /dev/ttySL0 as the modem device.

Note: Responds to AT commands, have not tried actually dialing anything with it yet though.

Fingerprint reader

It's an aes2501.

This page has some stuff: http://gkall.hobby.nl/authentec.html

The aes2501-wy userspace program works, sorta.

fprint supports this device and is able to take good fingerprints, though I've not had much luck getting it to identify prints. It include a PAM module, for fingerprint based login. It's not yet packaged for Debian.

Card reader

Works fine for SDHC cards.

Other hardware

I have not tried to use the bluetooth although I expect it works. The "ECO" button doesn't seem usable.