Michael Lestinsky

Installing FreeBSD on a Samsung X05 XTC1400

This writeup is very probably significantly outdated. The respective laptop was had an unfortunate encounter with a hot cup of Earl Grey tea in 2007 and was destroyed. I will keep this text online because it is linked from some prominent pages, but I recommend to be cautious to the fact that the following text is no longer being maintained. Sorry.
-- Michael

Hardware

The notebook is a typical Centrino-type notebook, with a 1.4GHz Pentium M, 256 MB Ram, "40" GB HDD, WLan (Intel 2100 MiniPCI), AC97-Audio, i855GM-Graphics, 1024x768 TFT screen, no APM but ACPI... (See my dmesg)

Installation process

The installation went a bit rough. My idea was to keep a small Windows installation on the notebook running. So first of all I had to resize the existing Windows partition. (I used presizer. fips didn't work for me). For this I attached a USB-FDD (which is not bundled with the notebook!) to the notebook and created a bootable floppy disk with WinXP and put presizer on it, too. Booting from that drive worked out of the box and I could shrink the WinXP partition to about 7G.

Next I tried booting with a 5.0-R Installation CD. The kernel booted and panicked right away. A cross check with OpenBSD (snapshot from Sept. 17th, 2003) worked, but as OpenBSD lacks (or lacked at that time?) ACPI-support this was not a real option. After downloading the FreeBSD 5.1-R miniinst-iso and booting from that I succeeded in installing FreeBSD onto the notebook without any further problems. In the meantime I've moved on to -stable (RELENG_5), since there is very active development in the area of mobile computing in the FreeBSD community and the support for the notebooks has greatly improved.

Since the original partition layout of the disk was somehow broken the WinXP (Fat32) partition entry in the mbr got corrupted during the FreeBSD installation. I don't blame FreeBSD here, as I got warnings about the "funny" entry from the OpenBSD fdisk, too. Luckily I had written down the start- and end-sectors of the partition and could recreate the mbr entry with the FreeBSD fdisk utility without any loss of data. As boot menu I installed Booteasy, which works very nicely since.

Status

I recommend running FreeBSD-stable (RELENG_5 branch) on this notebook, as it solved many problems that were present in version 5.1 and 5.2. The status right now is:

ACPI

Some changes to /etc/sysctl.conf were neccessary:

    michael@mobi:~> cat /etc/sysctl.conf 
    hw.acpi.power_button_state=S5
    hw.acpi.sleep_button_state=S3
    hw.acpi.lid_switch_state=S0
    hw.acpi.standby_state=S3
    hw.acpi.suspend_state=S4
    hw.acpi.reset_video=0

To summarize the ACPI status:

Maybe I'll have luck and somebody submits a working DSDT for this notebook to e.g. ACPI4Linux. Any further input regarding ACPI on this notebook is welcome as well.

Battery

You can use this shellscript to shut the system down, when your battery is running low. You have to enable devd from /etc/rc.conf and put these lines into your /etc/devd.conf:

    # Warnings and emergency shutdown if battery is running low.
    notify 10 {
            match "system"          "ACPI";
            match "subsystem"       "CMBAT";
            action "/etc/rc.d/battery";
    };

Buttons

To enable the buttons, you have to set a key symbol for the keycode first. This can be done with xmodmap:

    keycode 124 = XF86Terminal
    keycode 125 = XF86WWW
    keycode 128 = XF86Mail
    keycode 160 = XF86AudioMute
    keycode 174 = XF86AudioLowerVolume
    keycode 176 = XF86AudioRaiseVolume

Put that lines into a file .xmodmap in your home directory and load it with "xmodmap .xmodmap" from your .xinitrc/.xsession or your command line.

Then you've got to add some functionality to these key symbols. This is the window managers job. I'm using fvwm for many years now and could add some functionality to those extra buttons with these lines in my .fvwm2rc:

    Key     XF86AudioLowerVolume    A       N       Exec mixer vol -5
    Key     XF86AudioRaiseVolume    A       N       Exec mixer vol +5
    Key     XF86AudioMute           A       N       Exec mixer vol 0
    Key     XF86WWW  		    A       N       Exec firebird
    Key     XF86Mail        	    A       N       Exec xterm -e mutt
    Key     XF86Terminal    	    A       N       Exec xterm

Summary

Nice little thingy, if you don't need high quality audio. And a mass of two 1.9 kilogram are quite a good point, as well as the additionally bundled "long life" battery.
One thing that I personally dislike is that you have to turn the system off to replace the batteries, instead of adding the second set on demand.

See also: [Tuxmobil.org] [FreeBSD Laptop Compatibility List]

Michael Lestinsky 2011-12-15