Saturday, August 6, 2011

Getting Ubuntu to work with dual/hybrid graphics of ATI/AMD Mobility Radeon HD 5470 and Intel HD graphics

Probably the biggest problem I had was getting my hybrid graphics to behave. I have Dual/hybrid graphics of ATI/AMD Mobility Radeon HD 5470 and Intel HD graphics. I spent literally weeks trying to get switchable graphics to work. Here are the problems that came up:

Ubuntu repeatedly refused to boot. It would hang with just a blank screen, and be completely unresponsive. I fixed this by booting into Windows, switching to integrated graphics, and then rebooting back into Linux. Obviously this was no permanent solution, but if you have a similar ATI graphics card and your Ubuntu/Pinguy won’t boot, this could temporarily solve your problem.

The permanent fix is very simple. I just blacklisted the radeon driver on boot. Open the terminal and type:
sudo gedit /etc/modprobe.d/blacklist.conf
and at the very bottom add:
blacklist radeon
This will blacklist the radeon driver at boot so ubuntu will not try to load it and freeze up. I never was able to get my discrete ATI graphics card to work with Ubuntu/Pinguy 11.04, no matter what I tried, and I tried everything. As far as I know, at the time that I am writing this, it is impossible to get my ATI Mobility Radeon HD 5470 graphics card to work with Ubuntu. I always used my integrated Intel HD graphics card, and that worked just fine... until I wanted to play games... but we will get to that later.

The next problem I faced was both graphics cards being turned on and using power, even though only one was in use. Obviously this seriously falcon punched my battery life and made the laptop very hot. The way to fix this is to use vgaswitcheroo to turn off the power to the graphics card that is not in use. Go back to the terminal and type:
sudo gedit /etc/rc.local
And add this line:
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
This line turns off the power to the graphics card that is not in use. For us, this will always be the discrete ati card because the driver has been blacklisted and will never be in use. Putting this line in the rc.local will make it execute on every boot.

Ok now reboot, and the Discrete graphics card will be powered off.

To check if everything worked, open the terminal and type:
sudo cat /sys/kernel/debug/vgaswitcheroo/switch
The output should be:
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :Off:0000:01:00.0
This shows that the integrated card is in use and powered, and the discrete card is turned off.

Considering the amount of work I did to figure this all out, the solution is pretty simple. Too bad the ATI card is practically unusable. If anyone knows how to get it to work, please let me know.

sites that were helpful for me:
http://asusm51ta-with-linux.blogspot.com/
https://help.ubuntu.com/community/HybridGraphics
http://ubuntuforums.org/showthread.php?t=1744188

Continue Reading: Bluetooth Off By Default In Ubuntu 11.04

2 comments:

  1. Ummmmmm Yeah..... soooo I was lead to believe that there was instructions about two finger scrolling. And I couldnt find it. SO CONSIDER THIS A FORMAL COMPLAINT ABOUT YOUR BLOG!!!

    ReplyDelete
  2. hy, greetings to you Steven, very good that someone tried all that stuff. I'm user of Ubuntu 13.04 now and I was thinking of trying to get my ATI Mobility Radeon HD 5470 to work, is there any other way to do, if you know I would appreciate your answer. Thank you

    ReplyDelete