TuxMobil: Linux with Laptops, PDAs, Mobile Phones and Portable Computers
PRINT version of "Linux on a Sony VAIO R600HMK Laptop"
    <= Back to SCREEN version <=



Specs

Mobile Pentium III-M 1.2 GHz, 256MB, 40GB HDD (UDMA-5), 12.1" TFT XGA (1024x768), WLAN, Firewire (IEEE1394), USB, Modem, LAN.
Seems to be the european brother of R505 which is sold in the US. It is a small Sub-Notbook for people who cannot carry 3 kg around and can live without IrDA, floppy or CD.

Installation

I finally installed RedHat Linux 8.0 (Psyche) from a VFAT partition.
The strange thing was, that i had to rip an ISO-image from the boxed DVD, it does not suffice to copy the files onto the partition, the installation program will not find them there. So i ripped the image with dd if=/dev/cdrom of=/psyche-i386-disc1.iso bs=2048 onto another computer. Then i copied the ca. 3 GB via LAN onto the partition on the Vaio (running Windows).
The installation from CD does not work, fortunately you can boot into the installation program and choose another medium for installation. You have to attach a CD-ROM drive (bought extra) via Vaio-Link, which is Firewire with an additional power plug. You can boot off the DVD, but as soon as the initial system is loaded, Linux does not know about Firewire. The drivers offered by RedHat only seem to apply for SCSI-adaptors. But it would not have worked anyway, because "Psyche" ships with kernel 2.4.18 whose support for Firewire is mediocre; its OHCI-driver oopses on this laptop. So i installed 2.4.20 as soon as i could.
The other option was to install via network:
Setting up a webserver, mounting the DVD and making it available in the document root seemed to be a good idea. The Vaio found the first image on my webserver and I could configure the to-be-installed system. But when trying to install the packages, it just hung. Ok, next try...
The installation of the package selection "Workstation" via the Internet seemed to work out at first... until my connection broke down after downloading 1.2 GB of 2 GB. I will not tell you about the stuff I tried with this broken installation. >:) Another try with package selection "Server" with custom deselection in order to minimise the amount to be downloaded did not work out, too. I do not know why, the installation simply did not start to download the packages after the configuration step.
A quick check to install from a CD-ROM via PCMCIA did not work at all, you could not even boot.
So creating the ISO-image from the shipped DVD (or CDs) proved to be the least hassle. Do not ask me what to do if you have neither LAN nor another machine capable of creating ISO-images.

Additionally I compiled a 2.4.20 Linux Kernel from source. The kernel has to be patched with the current version (2002-11-22) of ACPI to make a couple of things work. The module sonypi was also compiled into the kernel, thus enabling the jogdial (see below) and the Fn-key. But only the navigational keys work with Fn, like "Page-up", "Page-down" and "Pos1".

Win2k Recovery

After re-partitioning with Partition Magic, Windows2000 did not want to work anymore. It complained about an inaccessible boot device. Strangely this happened after the second (!) boot to Windows, the first one was fine.
The Recovery-CD worked well, you just have to tell it to install into C: (/dev/hda1) and that is it.

BIOS

You may reach the Phoenix BIOS with F2. The BIOS is capable to boot an image via network but I didn't try it. You can also tinker with an option to en-/disable boot from Firewire. A boot from an USB-Floppy worked as well.

APM/ACPI

ACPI support is detected by the kernel and all modules load successfully. I cannot suspend the laptop. Mode 0 does (seemingly) nothing, Modes 2-4 are disabled in the 2.4.x series, as far as i know, and Mode 5 just turns it off. You can see the possible states for Speedstep in /proc/acpi/processor/CPU0/performance without having the possibility to switch between them.
The thermal values seem to be sensible, as the temperature of the CPU rises when starting heavy applications or when compiling.
The state of the battery seems to show sensible values, too.
See CONFIG_ACPI, CONFIG_ACPI_*.
APM support is not available. I once tried an apm -s while running the shipped kernel from RedHat which crashed the machine totally. I even had to pull out the battery to make it run again.

PCMCIA

You need the driver for cardbus/yenta for the controller. See CONFIG_CARDBUS.

Ethernet

The network interface works with the e100 kernel driver, should also work with eepro100.
See CONFIG_E100 and CONFIG_EEPRO100.

WLAN

This interface is a PCI device. It is called "Harris Semiconductor Prism 2.5 Wavelan" which runs fine with the orinoco_pci driver.
The integrated WLAN can be turned on and off via a switch on the left side of the case. It seems that only the antenna is turned off, because Linux still recognises the device. You can configure it with iwconfig and ifconfig.
See CONFIG_HERMES and CONFIG_PCI_HERMES.

Sound (OSS)

No problems here: i810_audio will do the work.
See CONFIG_SOUND_ICH.

Console

As long as there was no support for the framebuffer, there was only a small fraction of the monitor used to display the console. And "No" there is no option like "stretch display" in the BIOS. Enable the framebuffer and append the following on kernel boot: "video=vesa:mtrr vga=0x305". Strangely, when using lilo you have to have the following definitions in your config:

append="video=vesa:mtrr"
vga=0x305

Do not bother trying to get the line with "vga" into the line with "append", I tried several combinations which did not work.
This gives you a fullscreen display with 120x48 and 8 bpp color depth. But several console applications like minicom and the menuconfig of the kernel show a slightly garbled display which can sometimes lead to confusion.
See CONFIG_FB_VESA.

XFree86

This is another extremely painful problem. The driver for i810 should be the right one. Well, but not quite, it is way more complicated. The graphics chip is an i830MG with shared memory. For various reasons, Linux knows only about 1 MB of graphics RAM which leaves us with stunning 640x480x16 or 1024x768x8. X also likes to crash when being shut down. The display is sometimes garbled, too. You can get a clean display (without any 3D-acceleration) when using the vesa driver.
The solution should be this: kernel 2.4.20 and XFree86 4.3.0, where the latter has not yet been released. On the kernel-side you need to enable the module agpgart with support for i810 and the module intel 830M for DRM. See CONFIG_AGP, CONFIG_AGP_I810, CONFIG_DRM and CONFIG_DRM_I830. If you cannot install the current XFree vom CVS, you can download binary modules from this site [archived link] and copy the 830-module to /usr/X11R6/lib/modules/dri and the 810-module to /usr/X11R6/lib/modules/drivers. Unfortunately, these modules worken only once and then never again.
Running X with 1024x768x24 can be done with XFree86 4.2.99.2, that is CVS-checkout(http://www.xfree86.org/cvs/) from 2002-12-16. Though the X-module for DRI complains about a kernel-module which is too old (is == 1.2.0, should be >= 1.3) and disables DRI, so kernel 2.4.20 is not recent enough for this feature. See also the Debian-XFree86 v4.3 Mini-HOWTO.

You may also use binary drivers by Intel(http://support.intel.com/support/graphics/linux/graphics.htm), but I couldn't test them, because I don't have the machine anymore.

Jogdial

The jogdial runs like a charm. You need the module sonypi for the kernel (see above) and the package sjog installed. A mknod /dev/sonypi 10 63 creates the needed device file and then you can run sjog under X. It works as a mouse-wheel per default and a press on the wheel gives you a (configurable) menu to quick-launch applications. This menu allows to set display brightness and other settings.

FireWire (IEEE1394)

The aforementioned CD drive (and assumably other FireWire-hardware) works right of the box with kernel 2.4.20. Burning was done with 12x speed. You can play and thus rip Audio-CDs, but you cannot hear them. The player has no sockets for connecting cables except for the data/power-cable and the data-cable does not transport audio-data.

Modem

Doesn't work so far. It looks like a PCTel-compatible device, but it was not possible to make it respond to minicom. I tried version 0.9.6 which includes a binary driver which was compiled with gcc 2.x, while RedHat uses gcc 3.x. The kernel complains about that and considers this mixture to be error-prone. And it does not work, does it?

Other Resources

Credits



TuxMobil: Linux with Laptops, Notebooks, PDAs, Mobile Phones and Portable Computers


        /* Adv.    Xtops.DE - Laptops and PDAs with pre-installed Linux   Adv. */        

http://tuxmobil.org/sony_r600hmk.html, copyright © Werner Heuser, 1997-2008