Linux on the Sony Vaio PCG-R600MX
Last Updated: 14th February 2008
In May 2004 I sold this laptop, so this page is not going to be updated anymore. I didn't get around to adding any information on running Linux 2.6 on it, but there are now more things working. Fullscreen console now works perfectly with the i810 framebuffer. I had not managed to get bootsplash working though. ALSA works well and very easily with the correct options compiled into the kernel.
-
Contents
Spiel
This page might give you a few pointers on installing Linux on the R600, R505 or some other series Sony laptops. Mine arrived on the 2nd August 2002, a little while before it was discontinued. A couple of days later I installed Debian Woody on there, upgraded to Sid and ran that with Windows XP Home (which it came with) on duel-boot for about a year. Hardly used Windows much and with my Debian install getting more and more bloatsome and messy I formatted everything sometime in October and installed Gentoo Linux 1.4 on the whole disk.
Since I took my laptop out of the box, its been heavily used, its my primary computer and I'm on it for hours and hours every day. After a year, here are some thoughts:- The casing is fabulous, magnesium shell and really rock solid all round. It makes most other laptops look like they're going to fall apart. It is better than my dads Thinkpad and just as tight as my friends 15" Powerbook.
- The size is perfect. Its small and solid enough to easily walk about holding it in one hand, no worries. Large enough to be very comfortable and not ever want a desktop.
- The screen is decent, bright, angles and colours are good.
- The keyboard is fabulous, and feels like it will always be great if you type as lightly as I do.
- Lightweight, who needs CD & Floppy drives anyway?
- The battery lasts 3 hours when new
- Its very robust, apart from a little wear it has handled a lot of abuse. 'Tis very well made.
- Its very stable - no matter how hot it gets, it just never seems to crash... in fact I don't think it has ever crashed at all in the past 14 months (touch wood).
- It looks awesome! Its in lots of movies, on M's desk in the latest Bond flick for example...
- Chicks dig it :) (j/k)
Specifications
Processor Intel Mobile Celeron 800MHz (Coppermine-128), 128kB L2 Cache, 100MHz Bus - cpuinfo Memory 128MB PC100 CL2 onboard, one 144pin SODIMM slot (mine has an Infineon 128MB PC100 CL2 stick in there) Hard Disk Toshiba MK2018GAP 20GB 2.5" 9.5mm 4,200rpm UDMA100 drive with 2MB Cache - hdparm Chipset Intel 815E Chipset. 82815 GMCH Northbridge and 82801BAM ICH2-M Southbridge - lspci Graphics Integrated Intel 82815 AGP IGC 4MB Audio Integrated Intel 82801BAM AC'97 Audio Controller (Analog Devices AD1881A Codec). Stereo speakers, one headphone and one microphone 2.5mm jack sockets. LAN Integrated Intel 82801BAM EtherExpress PRO/100 VE. 1 RJ45 socket. Modem Integrated Intel 82801BAM 537 AC'97 Winmodem. 1 RJ11 socket. USB Integrated Intel 82801BAM USB Controller and Hub. 2 Type A sockets. IDE Integrated Intel 82801BAM U100 ATA100 Controller Screen Sony 12.1" XGA (1024x768) TFT with software backlight control and switchable monitor output socket Firewire Texas Instruments TSB43AA22 IEEE-1394 Controller with one 4 pin unpowered socket PCMCIA Ricoh RL5c475 CardBus Controller with one Type II slot Memorystick Sony MSC-U02 internal USB MagicGate Memorystick reader Touchpad Alps GlidePoint PS/2 Other Stuff Sony PCGA-DSM5/PCGA-DSD5 Docking Station Connector, Sony Jogdial, Pheonix BIOS vR0226U1, ACPI
Booting
The R600MX does not come as standard with a Floppy, CDROM, DVD or any other kind of bootable external media drive. The only time any of these things would be useful is when installing the machine... but there are ways around this:
Things that DON'T Work- Booting from Memorystick
For a laugh I tried to put an image of Trinux on a 4MB Memorystick, but suprisingly enough it really did not want to start booting from it. If anyone got this working, please give me a shout!
Things that MAY Work
- Booting from the CD Drive in the Docking Station
For clean hotplugging, Sony have made the CDROM interface Firewire (its a good design). Most current distributions will not be able to handle booting from Firewire, but you can try booting Gentoo with the 'dofirewire' option. I'm sure it will work, but I have no proof. Other new distributions may also support Firewire from initrd. - Booting from the Floppy Drive in the Docking Station
This should just work(tm). I don't think its a USB interface, just normal standard floppy. - Booting from a Sony Firewire CDROM/DVD/CDRW/Combo drive
The Vaio VX71P, SRX51P and some others include a Firewire disc drive, and its an optional extra from Sony for all other Vaios. It is bootable, and should work under Gentoo with 'dofirewire' or another distro with Firewire support in the initrd. Again, I have not tried it. - Booting from a Sony USB Floppy Drive
Again, the Vaio is sure to boot it, but whether a Linux boot disk would work on USB Floppy without some hacking involved, I can't say. There has to be a distribution out there that will make it work. Gentoo can make USB work from initrd but I don't think there is a Gentoo boot floppy. - Booting from another USB Device
It may be possible to use a USB Keyring-style device and boot Linux Mobile, and then use the distro installer programs over NFS maybe. Try it! - Booting from a PCMCIA Compactflash/Smartmedia/SD/MMC/xD/$flash reader
I am going to try this soon and see whether it is possible. - Netbooting an image over NFS
There is a BIOS boot option to boot over LAN, so it should be possible to configure a DHCP/NFS/TFTP server to send a boot image of an installer over on boot. More information can be found here. An example of how a guy got this working on a Mini-ITX system is here, and it sounds very promising.
Things that DO work
- Taking out the Hard Disk and plugging it into another machine
This is a tried and tested method. You will need a (fairly cheap) 2.5" disk adapter that might look like this:To take the drive out of the laptop you will need to undo the six screws under the palmrest and then gently lift the palmrest over to in front of the laptop taking care not to yank the cable for the touchpad. The drive is on the right, under the palmrest. Undo the single screw that is keeping it in, put the adapter on it, plug it into another machine, install until its bootable, put it back in the laptop and it should be fine. There are more details on this page.
- Using a Sony PCMCIA CDROM/DVD/CDRW drive
Do any of your friends have a Vaio C1, 505, Z600, or other ultralight Sony laptop? I know that the PCGA-CD5, PCGA-CD51, PCGA-CD51/A, and the CRX75A drives (and probably others) all work as they all have the same NinjaSCSI interface that the Vaio recognises and can boot from. This is my much preferred method of installation, I borrowed my friends (Sudarshan Guru Ratnavelu, aka Sid, who really wanted to be mentioned) CD51/A for this install and it works straight away, all you need to do is append:ide2=0x180,0x386
to your kernel boot line, so when I got a 'boot: ' prompt, I just typed:gentoo ide2=0x180,0x386 nofb noapm acpi
On some distributions you may need to turn off PCMCIA detection, I know this is the case to boot Knoppix on any Vaio with this kind of CD Drive. Try:knoppix nopcmcia ide2=0x180,0x386
- Booting from Memorystick
Kernel
I am running Linux 2.4.20-gentoo-r7 on here. The Gentoo gentoo-sources kernel is great, it has Con Kolivas super-reponsive patches with preemptive kernel support and also has the latest ACPI patch (which you currently NEED to make any kind of ACPI work properly). It has more, is very solid and I thoroughly recommend it. If you are installing any other distribution, you can still use the Gentoo kernel if you want. If you are rolling your own 2.4 kernel, make sure you patch ACPI.
I am not going to detail every single kernel option you should have here... my kernel config is here which has the basics required, you can load it and then add what you need. You can see my current dmesg output here.
Video
Framebuffer
There is no framebuffer support for the i815 in the standard 2.4 kernel. This means that the text mode is stuck at 640x480 using the 'vga16' option. Its no big deal, but if you use the machine without X sometimes and want a fullscreen framebuffer, look at the i810/i815 Framebuffer Project. I haven't got it to work yet. 2.6 should have this support built in.
Basic X
X has no issues at all. It just works, my XF86Config is here.
DRI
You can use hardware 3D on the i815 with no problems, just install DRM as per the manual if you are using Gentoo, or see the DRI Homepage if you are not.
Monitor Output
To be able to switch output to the external monitor socket, install 'i810switch'.
Audio
OSS works fine for me using CONFIG_SOUND_ICH built into my kernel. However, many people seem to have problems and need to use ALSA. I am going to swap to using ALSA soon as OSS does not have full duplex capability that I need for VoIP - I will post more details later.
Networking
There are two kernel drivers that support the Intel networking in this laptop, 'eepro100' (CONFIG_EEPRO100, the original Becker driver) and 'e100' (CONFIG_E100, the one developed by Intel). The Intel one works great for me.
Winmodem
Oh yeah, there is a modem in here, almost forgot it was there. If you must use it, type 'emerge hsflinmodem' in Gentoo, run hsfconfig and marvel at your new /dev/modem (and /dev/ttySHSF0) device. There are .rpm's for RedHat people, .deb's for Debian people and .tar.gz's for everyone else at this page. I cannot tell you if it works, I've never plugged a modem cable into my laptop.
PCMCIA
Another one of those things that 'just works'. Load up cardmgr, install wireless-tools and voila, WiFi with my prism2 card. Insert my compactflash reader and beep I can now mount /dev/hde... Slick. Don't forget to make sure you have pcmcia-cs installed (thanks Max von Seibold).
Sony Things
SonyPI
With Sony Vaio Programmable I/O Control Device support (EXPERIMENTAL) (CONFIG_SONYPI) in your kernel you can now use the Jogdial in your laptop, adjust the brightness of your screen and check on your battery. More information on this is here. Useful programs that can take advantage of this are (amongst others, probably):- spicctrl - To get and set screen brightness and get power status in a console.
- sjog - Jogdial to mouse wheel and also has a menu to launch programs, adjust brightness and volume when you click the wheel in. Fancy.
- sonypid - Translates Jogdial movements into mouse wheel movements.
- jogmouse - Similar to the Sony jogdial program in Windows. Scriptable menu options. Very Fancy.
Option "ZAxisMapping" "4 5"
under the the clause for the primary mouse InputDevice in your XF86Config.
I was having a fascinating problem for a very long time where the Jogdial would not work if the laptop was booted on battery power, but fine if it was booted when plugged in. This always happened in Debian with 2.4.20 and other vanilla kernels. The Gentoo install I have at the moment does not seem to have this problem.
Also, the power reporting of the SPI device in 2.4.20 is rather erratic for me, as you can see below:hj@dunebuggy ~ $ spicctrl -p BAT1: 33293/3458 962.78% AC hj@dunebuggy ~ $ acpi -V Battery 1: charging, 100%, charging at zero rate - will never fully charge. Thermal 1: ok, 36.0 degrees C AC Adapter 1: on-lineSometimes it will give correct values, sometimes it will give stupid values. ACPI always seems to be correct though.
Memorystick
To make the memorystick work, you need the correct options in your kernel for USB Mass Storage, SCSI Generic and VFAT filesystems (you could always start with my config and change it for your needs). I would expect big distros such as Redhat, SUSE, Mandrake etc to have it in their default kernel. Once thats done, try mounting /dev/sda1. Easy.
Firewire
With the correct options in the kernel the TI TSB43AA22 Firewire controller is detected, is available in /dev and /proc and doesn't throw any errors of any kind. Other people have managed to get their Firewire dock, and other Firewire storage to work fine. I may attempt to plug a DV camera in and check it for myself at some point.
ACPI
A lot of people have been having problems with ACPI, but with the latest ACPI code that is already in this Gentoo kernel it works great. The power button, lid switch, AC adapter, thermal and battery events all work. With acpid you can set useful things to happen. For example, I have an event adapter which calls a script adapter.sh which you can look and see what it does. You may also want beep installed for this to work properly.
I have NOT got suspending (to RAM) or hibernating (to disk) working properly... I haven't used those features for so long I have learnt to live without and not missed them really. If anyone would like to explain how to get this to work, please drop me an email so I can add it to this page.
USB
Without ACPI working, the laptop likes to assign USB devices the wrong IRQ and be very broken in general giving 'usb_control/bulk_msg: timeout' and 'USB device not accepting new address' messages. This page has more detail on this problem and includes a small patch which makes everything work fine - I had been using this patch for about a year (before I got working ACPI) to make my Logitech Wireless Trackman work. Strangely enough, no matter what, the internal USB Memorystick reader always works, patch or no patch.
With ACPI I am not getting any errors with USB, yet my Trackman does not seem to work. This needs some investigation.
Links
