Linux on a Sony Vaio PCG-Z600RE
- Current Status
- Machine Details
- Installing RedHat 6.2
- Creating a rescue disk
- Other things
- Sources of help
Current status:
25 Sept 2003:
This page is no longer actively maintained. I leave it here in case
anyone is interested though surely now it must be merely of historic
value. I recently replaced the hard disk on this machine using the
wonderful instructions found here from Alan
Miller. It now has a 60GB disk. I used the original restore CD to
reinstall windows (it only created partitions on the first 12GB). I
then installed Redhat 9. The old trick of supplying
"ide2=0x180,0x386" no longer seems to get the
pcmcia cdrom recognized during the install process so the only way I
could install was by copying the images onto the FAT32 drive and do a
hard disk install. Everything works on this machine under linux so
there seems nothing more to add.
10 Sept 2002: A breakthrough - The ComOne Discovery Card winmodem DOES work under linux. All this time I have not tried to get it to work because the pcmcia-cs package states that this card will never be supported. It took a while to get it to work, but now it works great.
24 May 2002: I've not been maintaining this page very well. I am currently running Redhat 7.1 which essentially works "out of the box" on this machine. I happen to be using a prestine kernel 2.4.10. The jogdial works, and the USB floppy no longer produces errors and can be hot-plugged.
20 October 2000: I have upgraded to Redhat 7.0 (and found out how to do it off the CD) but otherwise left the configuration below unchanged. I do not intend to upgrade the kernel until 2.4.0 is finally released - my current 2.3.99-pre6 one is working just fine.
13 June 2000: I am in the following situation. I am using a modified 2.3.99-pre6 kernel -see below.
Successes:
- Can dual boot both linux and windows 98 (without any loss of functionality to
windows - see kernel details below).
- X windows works fine.
- CD is recognized
- Ethernet adaptor works fine (uses ethpro100).
- Suspend, and hibernate functions work with both operating systems. You need to
switch off sound before doing this and you will need to restart networking and
sound afterwards.
- I have a (linux) bootable floppy for rescue purposes.
- USB mouse is recognized and configured.
- USB floppy drive is recognized and configured (but not hot swappable very
easily).
- Sound works using the
ALSA sound system (version>0.5.8) - see below.
Failures:
To avoid timeout errors on the floppy, you need to have it plugged in at boot up
time. I think this is to do with the double pci-irq scan which the hint below
forces.
The supplied PCMCIA modem card is a winmodem - so is not supported. (10/9/2002 -
it does work now!)
the jog dial is not recognized (it is with the sonypci module now).
Kernel details:
In order to get the USB sub-system to work with the BIOS set to plug-and-play
operating system (which seems to be necessary to run windows) you need to follow
the hint. [For my machine, change "irq == 10" to "irq == 9" for that is where
the usb controller is - and practically everything else too.] You also need
kernel 2.3.99-pre6 or greater to get the new pci-irq routine or it will complain
that IRQ's are not set.
Here are some resources that may help:
-
My kernel configuration (for 2.3.99-pre6)
- My hacked version of linux/arch/i386/kernel/pci-pc.c
There is no option to
build the usb-storage module into the kernel so you need to `manually' load it
before the USB floppy will be recognized. I have a line in my /etc/rc.d/rc.local
file which is
/sbin/insmod usb-storage
to do this at boot time.
Machine Details:
The Sony Vaio PCG-Z600RE is a new (March 2000 in Europe) superslim-pro notebook
in the Vaio range. It has the following specs
- mobile PIII 500MHz
- 128MB RAM as standard expandable to 256MB
- 12.0GB hard disk
- Video chip: Neomagic 256AV with 2.5MB RAM
- TFT XGA screen (1024x768)
- built in ethernet adaptor (Intel 82559)
- Sound Chip: Yamaha DS-XG
- USB floppy drive (supplied as standard)
- PCMCIA CDROM (supplied as standard)
- PCMCIA modem card (supplied as standard) - but its a winmodem (Comone
discovery card).
Installation of linux:
New: I have now upgraded to Redhat 7.0 though I am still using my 2.3.99-pre6
kernel. However, it is not necessary to do a hard disk install - see below.
I have installed Redhat 6.2 (zoot) which comes with a 2.2.14 kernel. I used the
redhat 6.2 CD image to write a bootable CD.
Steps:
- Resize and repartition the disk. I tend to use partition magic for this but
there is no reason why fips and fdisk shouldn't work. The machine comes with a
7GB FAT32 C: drive and a 4.5GB FAT32 D: logical partition which completely fills
the rest of the disk. I deleted the extended partition, resized the remaining
primary partition to 5GB. Then created a 16MB primary partition (hda2) for the
/boot , then a 384MB primary partition for the root file system. The rest of the
disk I used for an extended partition containing a 1GB FAT32 (D:) , a 2GB ext2
(/home), a 3BG ext2 (/usr) and 125MB swap logical partitions.
- CDROM installation (New): This is by far the easiest way to install - though
not the way I did it. The laptop will happily boot off the CDROM but , unless
you give it more information, it will forget where the CDROM is later in the
install process, which is why I originally did a hard disk install (see below
for details). To remedy this you need to type linux ide2=0x180,0x386 at the
redhat boot prompt. Then you should be able to proceed with the usual
installation. Thanks to
Holger Frahm for the hint.
- Hard disk installation: Now boot to windows. I did a hard disk installation
since I found that even using the pcmcia boot image, redhat 6.2 would not
recognize the CDROM as a CDROM but just as an IDE drive. I believe a network
install should work though but I have not tried it.
- Create a directory called RedHat on the windows C: drive and fill it with the contents of the same directory on the CDRom. I think you only need the contents of `base' and 'RPMS'.
- Now install Redhat. Note you can boot the system off the CD even though the kernel won't recognize the CD later in the installation. I guess the same is true with the bootable floppy. Your installation medium is the hard disk /dev/hda1.
- Installation is straightforward - it will be text based.
- Installing LILO. You
need to put this on the master boot record (MBR) so you will need boot=/dev/hda
if you write your own lilo.conf. If you don't and install it on the linux /boot
partition then the hibernate function doesn't work properly and just behaves
like suspend. For some reason hibernate only works when the active partition is
/dev/hda1 (ie your windows C: drive). If you insist on putting LILO on your
linux boot partition and not the MBR, then remember to check that it is the only
partition marked as active or the MBR will neve pass control to LILO (RedHat 6.2
does not seem to check for this).
- Setting up X11. It found the right video card but I had to tell it the amount
of memory. There is an option for a 1078x768 LCD screen for the monitor which I
took. Probing clocks didn't work but nothing hung during the proceedure. Works
fine!
- Don't bother creating a rescue disk 'cos, as far as linux is concerned, you
don't have a floppy drive.
That gets you a functioning system after which you can work on the details. The ethernet card was detected and correctly configured, out of the box.
Creating a
rescue disk:
I found it slightly disconcerting not having an alternative method of booting
linux so I have created a bootable floppy (bootable from a floppy drive which
linux doesn't yet see). This was easy but I used a second machine. Compile
yourself a new kernel (or alternatively I guess you could lift the current
kernel). Make sure that it has the correct root device (`rdev vmlinuz /dev/hda3'
for me). Then copy this to your FAT32 partition. You can then transfer it to
another linux machine which does have a recognized floppy. I then followed the
instructions in the lilo users guide for creating a LILO bootable floppy. (Make
an ext2 file system, copy /boot/boot.b and the compressed image to the file
system and run lilo with the command line given in the Users guide).
Okay - supposing you didn't have access to another linux machine. I guess you
could do the same thing by using a file on the windows partition as a loopback
device. You would construct your filesystem on it and then when you are happy
with it you could use the rawrite utility under DOS to make the bootable floppy.
I have not tried this. (Actually I don't think it will work either as lilo needs
to know absolutely where it will be during the boot process.)
Other
things
Sound:
There is a sound driver for the Yamaha chip produced by
OSS . This you need to
pay for and if you use it you will get feedback between the speakers and the
microphone until you mute the microphone using aumix -m 0.
Alternatively use the new drivers from the
ALSA project. This
requires marginally more work to set up, but it is free and the devices are
initally all muted so there is no feedback. You obviously need to unmute them
before you can hear anything. First you need to have enable sound in the kernel,
but you don't need to specify any devices. After compiling the ALSA modules you
would install the following modules if you wanted to do everything by hand:
insmod soundcore
insmod snd
insmod snd-timer
insmod snd-pcm
insmod snd-mixer
insmod snd-ac97-codec
insmod snd-ymfpci
insmod snd-hwdep
insmod snd-opl3
insmod snd-seq-device
insmod snd-rawmidi
insmod snd-mpu401-uart
insmod snd-card-ymfpci
Then, for compatibility with the OSS drivers (to get Gnome to work) you should:
insmod snd-pcm-plugin
insmod snd-mixer-oss
insmod snd-pcm-oss
Finally, switch on the sound devices using:
amixer set "Master" 19
unmute
amixer set "PCM" 19 unmute
After suspend you will need to remove and reinstall the snd-card-ymfpci module.
The ethernet card seems to need to be cold booted after it has first been configured with windows.
Sometimes the CD-rom PCMCIA needs to be removed and reinserted for it to be configured successful. When it is, it appears as /dev/hdc or /dev/hde.
Sources of
help
The spec of this machine seems to be identical to that of the z505-hs, which is
sold in the States. I am not completely convinced that these are the same beasts
though since I tried using the kernel config that seems to work reasonably well
on those machines with little improvement for me. However, there is a community
working on full linux functionality for that machine, and they can be found at
sourceforge.