As the title says there is way to get AMD/Intel Hybrid Graphics to work on Ubuntu and other Linux's distros. I'm actually writing this post under Ubuntu 11.10 and Gnome Shell on a Dell Vostro 3550 computer with a Intel HD 3000 integrated video device and a ATI/AMD 6630M video card, and the video device used right now is the AMD one.
So before, I tell you how did I do and what to know about how the AMD/Intel Switchable Graphics works, I believe it would be better to show you a screenshot, so here it is :
*As you can notice my computer is in French, but I think this isn't a problem for a global understanding of the text.
I - How to make fglrx (the catalyst ATI/AMD driver) communicate with the intel driver ?
1 - Sandy Bridge New Acceleration -SNA
First of all, the major problem that users are faced when trying to install fglrx is that fglrx to communicate with the Intel driver and take control of the Xorg server need the Intel driver package : xserver-xorg-video-intel to have been compiled with the --enable-sna option. Otherwise without that option fglrx doesn't work at all and may not detect any AMD device on your computer. In fact the Sandy Bridge New Acceleration wasn't included into the xserver-xorg-video-intel package by Ubuntu because that option was known to be too much recent and was consequently a risk of many bugs for people who actually have a Intel video device.
2 - Version compatibility between fglrx and xserver-xorg-video-intel
In order to make fglrx properly works, the intel driver installed must be supported by the actual fglrx driver installed on your computer.
Here is what I know :
- flgrx (version < 12.1 && version >= 11.6) supports only as most recent the 2.15 Intel's driver version.
- fglrx (version = 12.1) now works with the latest Intel's driver version which is 2.17.
The conclusion is that no matter if xserver-xorg-video-intel has been compiled with the --enable option if it's version is not compatible with fglrx.
II - Xorg.conf and switching between the two graphics cards.
Supposing you just installed the proper drivers (fglrx + xserver-xorg-video-intel with SNA), you first need to create a xorg.conf, this can be simply done by entering this command :
sudo aticonfig --initial -f
This command outputs a valid Xorg.conf that indicate to the Xserver to give control of the display to the fglrx driver, nothing is mentioned about the Intel's driver in it.
A thing to note before you continue the reading is that when you actually switch between the graphics cards you will need to reboot your system in order to apply the changes.
To know what gpu is used enter this command in a terminal :
To switch to the Intel gpu enter this command in a terminal :
To switch to the AMD/ATI gpu enter this command in a terminal :
Note : This can also be easily done with the catalyst gui as seen on my screenshot.
The two commands that switch the gpu secondarily calls two scripts installed automatically by fglrx. Those scripts contains command (mainly update-alternatives) to indicate to the system which GL's librairies the Xserver will have to use at next boot. Those two scripts are developed to work on any Debian based distros, so it totally works out of the box on Ubuntu.
III - How to install a correct version of xserver-xorg-video-intel and fglrx on Ubuntu to get AMD/Intel Hybrid Graphics to work. [TODO]
Sadly, there is actually no easy way to install a sna version of the xserver-xorg-video-intel driver, I plan to do a ppa containing it, so you better check this thread frequently. I hope I will be able to make it before the end of the week (26 February), if you want to help, please tell me. I suscribed to this thread, I will receive an email if anybody create a new post.
The Oneiric version of the package is 2.15.901 I will only compile that one and not the most recent to avoid bugs with Oneiric's Xorg version.
To install the latest AMD/ATI driver an easy way exists just check this page : http://wiki.cchtml.com/index.php/Ubu...allation_Guide
But do not install it ! Before I release the Intel driver compiled with sna.
IV - AMD/Intel Hybrid Graphics in the Linux future.
As I said in the first part, by default there is actually no Linux distribution that provides the xserver-xorg-video-intel package compiled with --enable-sna. But recently Chris Wilson the main developper of this driver has released the 2.17 version of it (this is the version that will be included in Ubuntu 12.04), which according to him brings many bug fixes and performance improvements. What I hope is that Ubuntu and other distros will in the future provides by default the Intel driver compiled with sna, this would make our AMD hybrid card work out of the box after installation (if the package maintainer also check the compatibility with fglrx).
Sadly I don't think this will be available for Ubuntu 12.04 (I think it's too late to integrate new functionnality into the drivers that will be provided).
I'm asking every person reading this post, to create a post, to proove that we are many that depends on this sna option, to gain the attention of Ubuntu employees. An attention which I hope will lead to the adoption of the New Sandy Bridge Acceleration before the release of Ubuntu 12.10.
Useful links :
You can thanks that guy because his post really helped me to understand how the ati hybrid graphics works.
You can also check this Gentoo wiki about hybrid graphics, this is some Gentoo's users that actually found first a solution on how to make AMD hybrid cards to work on Linux.