Good NVidia drivers for a GeForce GT 330M on a VAIO laptop?

This is very specifically an issue with Sony VAIOs. The latest nvidia drivers should work but there's an EDID detection issue (how the video card finds out the monitors supported modes).

This post should provide a fix and there's a handy link at the bottom for ironing out any other quirks:

What I found was that Lucid's kernel (I believe all >= 2.6.32 kernels) has built-in driver for nvidia, called "nouveau". This one is built right into initrd image and is the one that causes the workspace to be bigger than the actual screen.

Naturally I though of installing invidia drivers instead of nouveau, but that wasn't easy. I couldn't unload nouveau in any way (I believe because it's built-in and not shipped as module) and with nouveau loaded nvidia's installer would fail.

So what I had to do first, was to disable the nouveau driver. I did it by putting the following parameter to /etc/default/grub: GRUB_CMDLINE_LINUX="nouveau.modeset=0". Then I had to invoke sudo update-grub.

Having added this parameter, I rebooted and got 800x600 resolution, bacause now there was no driver in kernel to support the 330M GPU (but naughty nouveau was finally gone!). Switching to command-line mode by sudo service gdm stop and by installing nvidia latest drivers (195.36.24) I almost got it done, but, not yet. Original nvidia driver loaded, but failed to correctly draw anything on the screen.

After searching a bit I found on the page linked in the bottom of this post that Sony Vaio F's LCD panel EDID isn't recognized by nvidia drivers automatically, so you have to "help" drivers in this matter: after finishing installing nvidia drivers (and before the reboot) you have to add the following lines to "Device" section of xorg.conf:

Code:

Option         "ConnectedMonitor" "DFP-0"
Option         "CustomEDID" "DFP-0: /proc/acpi/video/NGFX/LCD/EDID"

and only then reboot. You'll be happy to see log-in screen in fullhd!

NVidia's driver still behaves strangely on my Sony (no sound over HDMI, poorly working display backlight settings, no ability to switch to text mode via CTRL-ALT-N (1-6)), but general functionality is ok, including native fullhd desktop resolution, 3d acceleration etc.

PS A lot of Sony-Vaio F Series related problems in Linux are discussed here: http://code.google.com/p/vaio-f11-linux


Try the latest 256.x nvidia drivers from the Xswat PPA - you don't have to recompile on each update.

sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update 
sudo apt-get install nvidia-current nvidia-current-modaliases nvidia-settings

You might also need a sudo apt-get upgrade in there too if you already have old versions of those packages installed.


But otherwise, check the supported chipsets in driver releases. Ubuntu doesn't use the very latest nvidia driver because they need to test them. This can mean that if your hardware is very new, the used driver wont work.

To find this out, find out what version Ubuntu ships in Synaptic (The nvidia-glx-185 package ships nvidia version 195.36.24) and compare that with the relevant page on nvidia.com. Here is the information on 195.36.24. Look under supported products and you'll see what hardware it supports. If yours is in there, awesome. If it's not then we have a problem.

In cases like this you have to go straight to the source and download the latest nvidia driver from nvidia. I personally get mine from the Linux Forum on NvNews (nvidia's forum). They don't package their installers as debs, they're just executables.

Once downloaded you need to:

  1. Go to a TTY (Control+Alt+F1)
  2. Log in
  3. sudo stop gdm to kill X
  4. sudo sh NVIDIA-Linux-x86_64-256.44.run (but replace this with the actual file)
  5. Assuming that goes well, it should build, install and load the kernel driver so just sudo start gdm to get back into X

Note: Ubuntu's driver will automatically rebuild the nvidia kernel module when it updates its kernel (security updates, etc). Unless you want to get involved in some serious scripting trickery, the manually installed one wont. So after kernel updates you'll likely be dumped at a low-resolution screen with a prompt on what to do next. Click exit to prompt (or the one that sounds like that) and do what you did starting from point 2.

Note on that Note: I recommend you never use the low graphics mode as it can disturb your desktop settings. Just get out of X, reinstall the driver and get back into X with full hardware capabilities.