Ubuntu 11.10 and Hybrid Graphics on Sony VAIO S

I bought this Sony VAIO S series notebook almost 8 months ago. As the majority of modern high-end notebooks, it is delivered with two graphic cards:

  • The integrated one, by Intel (i915)
  • The dedicated, or discrete one, by AMD/ATI (HD6470m in my configuration)

This system, called Hybrid Graphics, is intended to provide users with two different and ready-to-use configurations to regulate performance vs. power saving modes. VAIO notebooks have a STAMINA/SPEED hardware switch to decide which one of them to use.

It works pretty well on Windows 7, where you can use the STAMINA mode to activate the integrated card and increase battery duration or the SPEED mode to activate the AMD card and get the best performance out of this notebook.

Things are a bit different on Ubuntu. Ever since I own the notebook (Ubuntu 11.04 and 11.10), not only I’ve never been able to use the STAMINA/SPEED switch, but I’ve had a lot of problems when trying to use the AMD card in a “static” configuration (however, AMD is working on their proprietary Linux drivers and they are progressing a lot: http://www.phoronix.com/scan.php?page=news_item&px=MTAyNzk).

The good thing for me is that I don’t need to use the AMD card at all.

The Intel one works very well for pretty much everything, including HD videos and any kind of desktop effect. However, I’ve never tried games.

So, the solution for me has been simple: do not use the AMD card! There’s still something missing however: you cannot completely forget about the discrete graphic card, if its fan keeps spinning as loud as a vacuum cleaner or if it is producing so much heat below your wrist!

So, finally, here’s the solution I’ve always proficiently used to switch off the AMD card and use my notebook as it was provided without that (I’m assuming your system is clean as it is after a new installation):

  1. Edit your /etc/modprobe.d/blacklist.conf file and blacklist the radeon module (replace “gedit” with your favorite editor):
    sudo gedit /etc/modprobe.d/blacklist.conf

    Add the following lines at the end of the file:

    # radeon
    blacklist radeon
  2. Edit the /etc/rc.local file to use the vgaswitcheroo kernel module and switch off the discrete card
    sudo gedit /etc/rc.local

    Add the following lines just before exit 0

    modprobe radeon
    chown -R $USER:$USER /sys/kernel/debug
    echo OFF > /sys/kernel/debug/vgaswitcheroo/switch

And that’s all, from next restart you can forget about the AMD card.