LINUX on the Sony VAIO PCG-505TR

Picture of VAIO
William A. Stein

Ezra N. Miller

Last updated May 25, 2000      















Contents:
Introduction
System information
Installing Redhat 6.1
Sound
Speed
Memory upgrade
PCMCIA Ethernet card
Clock problems
Other power management issues
Fixing the keyboard layout
RIO 500 via the USB port
onHandPC
Olympus DS-150 digital recorder



Introduction

The authors purchased two Sony VAIO PCG-505TR computers ($1495/each) from
www.cdw.com. (Note: I don't know of any company, including CDW, that still carries 505TR's.) We chose this Sony model because of the small size, high screen resolution, and Linux compatibility described by bfields and jfreund on the Linux on Laptops page. The newer N505 costs no more than the 505TR and features a faster Celeron 333 processor, but dwhysong and liz have both reported significant incompatibilities when using the N505 with Linux.

The first author previously owned an NEC Versa 2730MT, which weighed over 7 pounds. He hardly took it anywhere because it was too heavy; the VAIO is small enough that he carries it with him often, which results in it being used much more. The small keyboard and screen takes some time to get used to.

We were both pleased with CDW's service. However, our laptops appeared to be DOA! The solution is to plug the laptop in for approximately 20 minutes to charge the internal battery so that the machine will boot up. Our machines would not turn on before charging the internal battery for a few minutes!

"I" in the description below refers to William, and all email enquiries should be directed to [email protected]. Please do not send me Microsoft Windows related questions, as I don't know anything about Microsoft Windows.


System information

System info: RAM 128MB
Floppy: Generic NEC Floppy
Display depth: 64K
Modem: Sony internal modem (K56flex+V.90) (not a Winmodem!)
Sound card: ES1879 Plug and Play audio (16-bit Soundblaster compatible)
Display: Crisp 1024x768 active matrix. (One VAIOs has only one dead pixel, which is near the top edge of the screen, and the other head two slightly lifeless pixels.)

Installing RedHat 6.1

We performed the following steps:
  1. Turn on the computer and answer the Sony questions.
  2. There is a "Sony Notebook Setup" program in the control panel in Windows 98. It tells all of the device locations, which we noted for later reference.
    Serial port: com1, irq 4
    Modem: com2, irq3
    Audio: irq5, dma 1,5, midi 320h-321h, sound 220h-22fh
    
  3. Using FIPS, repartition the hard drive. As noted in the VAIO web pages, it is important to leave the 132MB /dev/hda4 hibernation partition alone.
  4. Using rawrite, create the pcmcia.img boot floppy. In contrast to previous versions of RedHat, this is the ONLY floppy that is needed when installing RedHat 6.1 using an ethernet card.
  5. Boot with the floppy, and set up your ethernet PC card.
  6. The first author installed KDE Workstation and the second installed Gnome Workstation.
  7. Mouse: generic ps2.
  8. Reboot, then run Xconfigurator and for the monitor, select LCD Panel 1024x768.
  9. But, in the end it works perfectly. Using Xconfigurator I get a beautiful X-windows display as well. Wonderful!
  10. Setup is complete.

Sound

Update (May 25, 2000):

Bruce Forsberg ([email protected]) provided the following information about sound configuration.

The Sony VAIO PCG-505TR uses the ESS-1879 chip set. This chip set was not supported until kernel 2.2.11. If you are using an earlier version then you will most likely need to use the OSS sound software. Otherwise upgrade your kernel to 2.2.12 (this has some bug fixes). I had to do this since I use SUSE 6.2 which is based on the 2.2.10 kernel. Once this is done, then the 100% Soundblaster Compatible entry in the kernel should work.

There is a bug in the kernel for the ESS-1879 sound chip that I have found. This problem occurs when booting into Linux from Windows without powering down the computer first. A register, 0x71, in the sound chip can have values programmed into it that will alter the sample rate algorithm of this chip. On my system this results in sample rates below 22050 being set wrong. This register does not get reset with a software reset. The kernel does not zero out this register. The work around is to power down the computer when exiting windows and before entering Linux. I have reported this to the author of the module that supports this chip, so this should be fixed in a future kernel. If you are an experienced kernel developer then here is the fix.

Change file drivers/sound/sb_ess.c.   Add the following code to the function ess_init, at the end of the function:

    /* Disable audio 2 data if boot 
       from another OS w/o HW reset */
    if (devc->submodel == SUBMDL_ES1879)
    {
       ess_setmixer(devc, 0x71, 0x00);
    }

If you have never modified a kernel before, then I don't recommend doing this. You can get into really big trouble. This fix should work for kernels 2.2.11 thru 2.2.14.


Speed

At first we thought one of our machines was extremely slow, but fortunately this was because of a power management problem. In the BIOS, I set the CPU to slow down when it is not heavily loaded. Unfortunately, under Linux this resulted in the CPU running at 1/4th speed all of the time.

64MB Memory Upgrade

I bought a 64MB RAM chip for $199 from
Coast-to-Coast memory. I was not pleased with their service; for example, they told me repeatedly that the memory would cost $119 instead of $199, but charged me $199. This isn't the place to go into more detail about their poor service; at least the memory arrived and works. The installation was easy: I followed the very detailed instructions on the Sony web page, which involve turning everything off, removing a single screw from the bottom of the unit, inserting the RAM chip, and putting the screw back in.

PCMIA Ethernet card

I am using a Linksys EtherFast 10/100 PC Card (PCMPC100). A common problem with this card, which is well-documented
here, is that after suspend-resume the card runs 1000 times as slow as it should. On that web page, someone suggested that restarting the eth0 interface (/sbin/ifdown eth0; /sbin/ifup eth0) would temporarily fix the problem, and it does.

Since nobody seems to have found the true source of the problem, I am using the following fix. I add a single option to /etc/pcmcia/network, as follows:

# ...   
'restart')
    /sbin/ifconfig ${device:?} down up
    ;;
'resume')
    ./network stop eth0
    ./network start eth0
    ;;
esac                                
With this change, the ethernet card always works correctly. I am confused as to why the "resume" option doesn't already exist, as it is called by the cardmgr daemon when resuming from suspend:
Jan  4 21:20:51 localhost apmd[12336]: Normal Resume after 00:00:12 (99% 2:58) AC power
Jan  4 21:20:52 localhost cardmgr[393]: executing: './network resume eth0'  

Next we describe how to use a PCMCIA ethernet card and the built-in modem at the same time.


Clock problems

Clock problem: suspending and then resume resets the clock to be exactly eight hours slow in Linux. Thanks to
Ed Schlunder who told me the solution:
Then, the 8 hours off problem you described was because 
Red Hat's kernel configuration sets APM to assume your 
system clock is set to GMT instead of your local time. 
I compiled a new kernel with the following APM settings 
and it works much better now:

CONFIG_APM=y
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
# CONFIG_APM_DO_ENABLE is not set
CONFIG_APM_CPU_IDLE=y
# CONFIG_APM_DISPLAY_BLANK is not set
CONFIG_APM_IGNORE_MULTIPLE_SUSPEND=y
CONFIG_APM_IGNORE_SUSPEND_BOUNCE=y
# CONFIG_APM_RTC_IS_GMT is not set
CONFIG_APM_ALLOW_INTS=y

Fixing the keyboard layout

The keyboard layout on the VAIO leaves something to be desired; perhaps this is because Sony squeezed in two Windows keys. In Linux it is easy to re-arrange the keys. Here is an example.
  1. Create a file called keymap that contains the following lines:
       ! Make some substitutions...    (type xmodmap -pke for a list of keycodes)
       keycode 115 = asciitilde grave
       keycode 117 = Delete
       keycode 49  = Escape
       keycode 37  = Control_L
       keycode 66  = Caps_Lock
    
       ! Swap Caps_Lock and Control_L
       remove Lock = Caps_Lock
       remove Control = Control_L
       keysym Control_L = Caps_Lock
       keysym Caps_Lock = Control_L
       add Lock = Caps_Lock
       add Control = Control_L            
    
    The command
       xmodmap keymap 
    
    then makes the above changes, at least until you restart X. However, by placing these lines in the file .Xmodmap in your home directory, they will automatically take effect.

Digital camera

I use an Olympus D340R digital camera, which communicates with my laptop via the SERIAL port. At under $300, the D340R is simple and inexpensive, but produces crisp photos. I am aware of two programs for downloading digital photos:
photopc and gphoto. I've found that gphoto frequently crashes when trying to download a large number of pictures; this seems to be because the laptop somehow can't keep up with the camera. On the other hand, photopc sort of works the option "-s57600"; however, photopc doesn't understand the date stamps on the pictures, and doesn't provide a nice X-windows interface for editing pictures.

I wrote a perl script go-camera.pl, which, when combined with gphoto, works very well for me.


RIO 500 via the USB port

The
Rio 500 MP3 player is supported under Linux. In order to obtain support for the USB port, I upgraded to the (unstable) linux kernel version 2.3.47. Everything worked fine, as long as I didn't turn the laptop on with the RIO plugged into the USB port. To enable communications with the RIO, I execute the following script:
   # installing these two modules will make the rio 500 communicate w/ my VAIO
   /sbin/insmod /lib/modules/2.3.47/usb/usb-uhci.o
   /sbin/insmod /lib/modules/2.3.47/usb/rio.o             
After upgrading to kernel version 2.3.47, a few things broke. Most noticeably, when I suspend under X the VAIO resumes with the screen shifted about 25% to the right. I can fix it by typing "Ctr-Alt-F1" to switch to a text console, and then "Alt-F7" to switch back to X.

onHandPC

There is some
support for the onHand PC under Linux.

Olympus DS-150 digital recorder

There seems to be absolutely no support whatever for the Olympus DS-150 digital recorder, or the files it produces, under Linux. The only solution I've found is to run Windows 98 under
vmware.

The sound is (usually) nothing but a hissing squeal under VMWARE 2 with Windows 98. Andrew Nguyen also experienced this problem, but reports that the Olympus DS-150 player works under Windows 2000 with VMWARE 2.

   Re: Linux / Olympus DS-150
   From: Andrew Nguyen 
   To: [email protected]
   Date: Thu, 7 Jun 2001 00:16:00 -0700

   Good news!  I installed Win2000 under VMWARE 2.0.4 and the sound files play 
   just fine.  However, i'm now having trouble seeing the files on a raw 
   disk......
   --Andy

   On Tuesday 05 June 2001 15:18, you wrote:
   > On Tuesday 05 June 2001 18:12, you wrote:
   > > That is the exact problem I have and will be trying to use Windows 2000
   > > under VMWARE.  I'll let you know if I find a better solution.
   >
   > Thanks, and let me know if Win 2000 works for you.
   >
   > -- William

Contact info

Email me at [email protected] with questions or comments. I will add any interesting solutions we find to this web page.

Mailing list archive



From      : Kevin Gassiot 
Subject : Re: VAIO upgrade
----- Message Text -----
     I have Linux loaded on a 505TR also, and was thinking about adding some
     more RAM.  Looking at the Sony support page, it says that to go to 128
     MB, you have to install 2 64 MB chips, which turns off the on board
     RAM.  Did you just install a single 64 MB chip ?  Does the system see
     128 MB ?  It doesn't make sense to me that they would do that, but who
     knows.

I installed TWO chips in the little hatch on the bottom of the keyboard;
in sum, they costed $200, which was more than I expected for asingle 64MB
chip. I ordered an "upgrade to 128MB" from Coast-To-Coast and they sent me
two chips.  I don't remember whether the individual chips are labeled "64"
or "128" or not at all.  I don't have a screw driver because I'm visiting
Sydney right now, and didn't brig a swiss army knife with me.

Please let me know if you find out anything further, so I can add the info
to my web page.

-- William       

-------------------------------------------------------------------

HERE IS A HIGHLY SUBJECTIVE RANT ABOUT "WHAT TO BUY":

   Hi William!  I hope you remember me somehow.. Could you please advise
  me about laptops. Anything you want to tell me will be useful for me,
  since I know almost nothing about this. I checked a web site and found
  some Toshiba laptops for about 1 400 US$, but you see, I do not quite
  understand the features they talk about there... so I don't know if I
  chose the "right" thing.

People often say "the right thing" depends on what you need.  I don't
know what you need.  Are you buying a laptop because you want a
portable computer, or because you want a small desktop computer that
takes up less space and is easy to move?  If the latter, do yourself a
favor and just buy a desktop computer.  If the former, then I
recommend getting a highly portable machine that weighs no more than
FOUR pounds and has good battery life.  Sony makes several excellent
such machines.

I very strongly recommend you get a machine with and XGA active matrix
display having resolution 1024x768.  You can save hundreds of dollars
by buying a non-active matrix display (dual scan, High performance
addressing, etc.) or a lower resolution (800x600), but you *will*
regret having made that choice if you ever see an active 1024x768
display.


-------------------------------------------------------------------


From a prof at Univ. of Texas:

  I indeed bought a Sony Vaio (I forget now the exact model). I have
  only had it for a week so far and though there are some
  incompatibilities with Linux I think they won't outweigh its
  advantages (for me); it has a winmodem, usb floppy, no sound under
  Linux yet, etc. etc. But it's a great machine! Hopefully people will
  be able to make things work eventually.