Linux on Sony Vaio VGN-SZ2M

(Slackware 10.2, Kernel

20 november 2006: Forget Slackware, with i915 video chipset and last ubuntu , all is working out of the box (fcn keys, opengl, sound ...). Load the CD, choose install in safe graphic mode and have fun. Moreover Beryl works (tranparence, 3D desktop),see this screenshot. Note : 2 drivers are loaded for the LAN network : sky2 and sk98lin. You have to delete the module sky2, so only the sk98lin drivers will be loaded. By default sky2 is load and cause trouble when uploading.

Update: 17 july 2006: Switch to Sysconnect driver network (kernel driver buggy for the moment)

My apologies. I will improve the english as soon as I have time.

This laptop is great. With a proper acpi and cpufreq configuration, it is really quiet. The 13,3" x-black screen is really good -without too much light reflection- and wide with its 1200x800 pixels.
Autonomy is great and that's why i choose this one : 4h00 with the standart battery in stamina mode and with bureautic works. All this for a good quality/price and a light aluminium body (2Kg). It possesses 2 graphics cards, an nvidia chipset for 3D application (speed mode) and an i945 chipset for power saving (stamina mode). In fact, I only use the nvidia chipset for gaming or the use of the vga output.

Moreover the dual core processor works very well with linux smp suport:

This gives a great impression of power.


Processor: Dual Core Pentium M T2300
Memory: 1024 Mo DDR2
Hard-drive: 80 Go (5400 rpm) (SATA)
Motherboard chipset: Mobile Intel 945GM Express
Graphic board: Nvidia GoForce 7400 et inter 945
LCD : 13.3 pcs WXGA
Burner: DVD±RW (±R DL)
Wi-fi : Intel Pro Wirelless 3915
Sound chipset: Intel HDA
Ethernet: MArvek yukon 1GB
Connectivity: 1 x pcmcia, 2 x usb, 1x multi SD card, 1xIEEE 1394, 1 x vga, ...

lspci (in stamina mode) :
00:00.0 Host bridge: Intel Corporation Mobile Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile Integrated Graphics Controller (rev 03)
00:1b.0 Class 0403: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controllers cc=IDE (rev 02)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
06:00.0 Network controller: Intel Corporation: Unknown device 4222 (rev 02)
07:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8036 Fast Ethernet Controller (rev 15)
09:04.0 CardBus bridge: Texas Instruments: Unknown device 8039
09:04.1 FireWire (IEEE 1394): Texas Instruments: Unknown device 803a
09:04.2 Mass storage controller: Texas Instruments: Unknown device 803b


Pentium M Duo Speedstep Work Kernel. - cpufreq scaling
ACPI (battery) Work Kernel. acpi
Hard drive (SATA) Work Kernel. - ata-piix (sata through scsi driver)
Graphics card (nvidia) Work Nvidia driver (non-GPL driver)
Graphics card (i945) Work Xorg 6.9.0 + patch + Kernel DRI
Ethernet Work Sysconnect driver 8.34
USB Work Kernel. ehci + uhci
WiFi Work ipw3915 driver
SMCard Work Kernel. - smcard drivers
sound Work Kernel. - hda (Alsa sound)
PCMCIA Not tested .
IEEE 1394 Not tested .
Modem Not tested .

Slackware 10.2 installation

Use of Slackware 10.2 bootdisk :

Kernel configuration

A configuration config. to compile a minimal full-functional kernel for the laptop :

Not in this minimal kernel (add them, if needed):


In short (see on the web for details about kernel compilation)

X configuration

This laptop owns two graphic chipsets : an nividia chipset (switch on speed mode) and an integrated chipset intel i945 (stamina mode). I945 chipset is here for energy saving and, from reports, enable to gain 40 min on battery power compared to the use of the nvidia chipset.

I915 installation:

The most difficult to install (June 2006). It requires ;

Nvidia Installation:

X Configuration:

There is an xorg configuration file for each mode : xorg.conf-speed and xorg.conf-stamina
This simple shell script (copy from Ariel) can be used to set up the correct xorg.conf (and other chipset dependant action) at boot time. Place it, for exemple in /etc/rc.d/rc.local.
VIDEO=`/usr/bin/lspci |grep -c nVidia`

if [ "$VIDEO" = 1 ]; then
cp -f /etc/X11/xorg.conf.speed /etc/X11/xorg.conf
cp -f /etc/X11/xorg.conf.stamina /etc/X11/xorg.conf

VGA output configuration (nvidia)

See Twinview option in xorg.conf-stamina.

Alsa-sound configuration

The driver for the soundcard is included in the kernel: snd-hda. You just have to unmute the sound : Now, I like that my application (xine, xmms, mplayer) can play sound simultaneously. To do set up the /etc/asound.conf file like this.
Now, configure your software to use alsa as sound output (ao=alsa dans ~/.mplayer/config)
As far now, I have not access to the microphone.

ACPI and Cpufreq

Information on battery state, temperature, cpu frequency can be accessed by the user through /sys/devices/system/cpu and /proc/acpi filesystems.

Pentium M processor has Enhanced speedstep controller.
More and more peaple think that the use of user level frequency stepping is obsolete and must be done in kernel mode. Amongst frequency scaling governor, the recent "ondemand" governor is dedicated to Enhanced Speedstep processors. It gives nearly the same results than powersave controller on battery power. This governor adapts in real-time the frequency of the CPUs with respect to their loads.
These are the recommanded lectures on the topic : As the "ondemand" governor is compiled in the proposed kernel configuration file ahead, the only operation is to tell the system to use it at the boot time (in /etc/rc.d/rc.local for exemple on slackware) :
echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
You can get rid of the installation and configuration of cpufreqd or similar softwares :-). As an illustration, the time on each state for a processor recording during 2h20 with battery power and bureautic work (frequency / time in ms):
~$ cat /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state
1667000 1584
1333000 224
1000000 851012

Fn keys and LCD brightness

LCD brightness

Method to acces and change the LCD brightness is dependant of the chipset used:

Fn Keys

The sonypi driver works and capture Fn keys events in /dev/sonypi. Inspired by this script, I modify the simple demon sonypid in order to get brightness and sound button to work:


Update: 17 july 2006
The sky2 module from the kernel crash as soon there is some load on the network. I switch to the Sysconnect 8.34 driver, which works perfectly for the moment.


See ipw3915 pages for installation of the driver.
In details for slacware 10.2 and kernel, you need to:

SM Card

Driversof the kernel works. Drive attached as sdb on dmesg :
Vendor: Sony Model: USB HS-CARD Rev: 4.52
Type: Direct-Access ANSI SCSI revision: 00
sd 2:0:0:0: Attached scsi removable disk sdb

DVD Burning

DVD drive is natively detecting as an ide-atapi device (ide-cd module) and DMA is available. In order to burn DVD-R medias you need cdrecord-prodvd or dvdrtools. With Slackware 10.2, dvdrtools does not compile due to a conflict with the installed zlib, so i turn my mind on pro-dvdrecord. You can use xcdroast as GUI for exemple, then :

Loic Cuvillon - (replace __ by @ )
Feel free to contact me for question related to slackware on laptop.
I encourage you to create your own page about you xexperience on linux installation on laptop. It will help all of us.