This HOWTO does not follow the latest rules and regulations for all HOWTOs. This will be fixed in the near future, but caution is recommended.
Read First!!!
This HOWTO is NOT the standard "how to get 3D Acceleration working" HOWTO. It is meant for video cards that have the same symptoms as the ATI Mobility M6 LY card - random blanking of screen, or freezing of screen display (usually with strange screen distortion), most often when opening a new window or list, or some other display thing.
Please refer to a standard 3D HOWTO if your card doesn't crash after Part I after 30 minutes of good multitasking!
Cards that Work in this HOWTO
A card may or may not work with this HOWTO even if it isn't in the list. The list is just meant to show which cards you NEED to follow this HOWTO on.
If you find any other cards that work with this tutorial, let me know.
When I say "work with this tutorial", I mean...
a) You had issues before trying other tutorials, and this one worked.
b) Your computer was crashing after Part I, and you had to do Part II as well.
c) All of the above.
Important Stuff To Read
- This HOWTO works with Dapper, Edgy, and Feisty, but Edgy and Feisty are a lot easier to configure. Feisty is recommended.
- Please understand that this may, under rare circumstances, make your system unstable! My system is just fine, but you have been warned!
- If you really really need help, and just can't get this to work, contact one of my IM accounts listed in my profile. I am usually on weekends, Eastern Time, usually, though I cannot guarantee that.
- We will be upgrading packages using versions from Edgy, if you use Dapper. This may make your system unstable, but my tests ran fine.
- You don't have to have the Radeon M6 LY... I don't think. That's the thing. I don't really know for sure. This HOWTO is completely based on my limited experience, so I am open to suggestions about different situations that may come up! To tell if you should follow this HOWTO, go through Part I, and your computer becomes extremely unstable, this is fo' you!
- I assume you know how to use the terminal! If you don't, please visit this tutorial: http://linux.org.mt/article/terminal
- I assume you haven't made any radical changes to xorg.conf, and that you don't have more then one card. If this isn't true, then I assume that you are somewhat experienced in editing xorg.conf.
- This tutorial probably won't solve ALL freezing issues. It only reduces them, and enables 3D Acceleration! My computer usually lasts around 2 hours of good use before it crashes, whereas before it wouldn't last 30 minutes. - Apparently, my hardware is dying, so this note does not apply to everyone.
- If you've installed fglrx, you've just partly trashed X (the graphics system). In other words, if you've installed fglrx, and are getting issues when running glxinfo, or other programs that use the 3D engine, or even just trying to log in, then you should reinstall Ubuntu! Some users reported being able to get things to work just by uninstalling fglrx, and changing the driver back to radeon, but fglrx will most likely mess with Beryl, and possibly everything else 3D. You have been warned!
Part 1 - Getting The Card to Crash
Er... yea... well, not really. What I mean is that we are going to see if the drivers to output specific errors, and if they don't enable 3D accelleration because of those errors. That will tell you that this HOWTO is for you.
All Users - Dapper and Edgy
First, let's check to be sure that we have the 3D Acceleration drivers installed:
Code:
sudo apt-get install libgl1-mesa-dri xlibmesa-dri
Next, open the xorg.conf file. This file controls how the graphical display acts.
Code:
sudo gedit /etc/X11/xorg.conf
Find the part of the configuration of the log that says Section "Device". Notice that the entire configuration is seperated into sections. Each Section configures a different thing. We are looking for the Section that configures your video card.
Make a copy of the entire Section, then add "#" to the beginning of the lines of the first copy, like the example below. Be sure to change the "Driver 'ati'" part to "Driver 'radeon'". See example below for help.
Before
Code:
Section "Device"
Identifier "ATI Technologies, Inc. Radeon Mobility M6 LY [Radeon Mobility 9000]"
Driver "ati"
BusID "PCI:1:0:0"
EndSection
After
Code:
#Section "Device"
# Identifier "ATI Technologies, Inc. Radeon Mobility M6 LY [Radeon Mobility 9000]"
# Driver "ati"
# BusID "PCI:1:0:0"
#EndSection
Section "Device"
Identifier "ATI Technologies, Inc. Radeon Mobility M6 LY [Radeon Mobility 9000]"
Driver "radeon"
BusID "PCI:1:0:0"
EndSection
OK, now add the following Options to the second copy of the Section "Device":
Code:
#Optimized values (changed from driver default)
Option "AGPMode" "4"
Option "AGPFastWrite" "on" #Faster than default (off)
Option "SWcursor" "off" #Faster than default (on)
Option "EnablePageFlip" "on" #Faster than default (off)
Option "AccelMethod" "EXA" # or XAA, EXA, XAA more stable, XAA is deafult
Option "DynamicClocks" "on"
Option "BIOSHotkeys" "on"
#Left to driver default
# Option "RenderAccel" "on" #Default is "on"
# Option "DMAForXv" "on" #Default is on, use default value
# Option "SubPixelOrder" "RGB" #Force subpixel order to specified order. The default is NONE for CRT, RGB for digital panels, use default value
# Option "ColorTiling" "on" # Frame buffer can be addressed either in linear or tiled mode.The default value is on. Use default value.
# Option "DDCMode" "off" #Force to use the modes queried from the connected monitor. The default is off, use default value
#These are not mentioned in man page for driver
Option "AGPSize" "32" # default: 8
Option "EnableDepthMoves" "true"
(Thanks 2hansen for this superb xorg.conf configuration with excellent comments, which turns out to be better then mine in every way!!!)
Here's what it looks like in my example Section:
Code:
Section "Device"
Identifier "ATI Technologies, Inc. Radeon Mobility M6 LY [Radeon Mobility 9000]"
Driver "radeon"
BusID "PCI:1:0:0"
Option "BusType" "PCI"
#Optimized values (changed from driver default)
Option "AGPMode" "4"
Option "AGPFastWrite" "on" #Faster than default (off)
Option "SWcursor" "off" #Faster than default (on)
Option "EnablePageFlip" "on" #Faster than default (off)
Option "AccelMethod" "EXA" # or XAA, EXA, XAA more stable, XAA is deafult
Option "DynamicClocks" "on"
Option "BIOSHotkeys" "on"
#Left to driver default
# Option "RenderAccel" "on" #Default is "on"
# Option "DMAForXv" "on" #Default is on, use default value
# Option "SubPixelOrder" "RGB" #Force subpixel order to specified order. The default is NONE for CRT, RGB for digital panels, use default value
# Option "ColorTiling" "on" # Frame buffer can be addressed either in linear or tiled mode.The default value is on. Use default value.
# Option "DDCMode" "off" #Force to use the modes queried from the connected monitor. The default is off, use default value
#These are not mentioned in man page for driver
Option "AGPSize" "32" # default: 8
Option "EnableDepthMoves" "true"
EndSection
Now look for the Section "Module", and insert these modules if they don't exist already:
Code:
Load "dri"
Load "extmod"
Load "glx"
Load "GLcore"
Here's what the example looks like afterwards. Please note that this is from my configuration, and so you might not need everything listed here.
Code:
Section "Module"
Load "i2c"
Load "bitmap"
Load "ddc"
Load "freetype"
Load "int10"
Load "type1"
Load "vbe"
Load "dri"
Load "extmod"
Load "glx"
Load "GLcore"
EndSection
Before rebooting, print these instructions out just in case something crashes and you can't log in to the graphical display.
Now reboot your computer.
If you cannot login at all (possibly X crashes) then push Ctrl+Alt+F1, and login there for the rest of this HOWTO.
If you can log in, goto Applications -> Accessories -> Terminal, and type this in:
Code:
glxinfo | grep direct
If it says "direct:Yes", then your all set. If your card is not the Radeon M6 LY, and you are getting direct rendering, please undo everything you've done in Section "Device" (you can leave the Section "Module" alone) and use a different HOWTO. This HOWTO disables certain features, and lowers the quality of colors to get direct rendering to work. (Note that you almost can't see the difference in colors.)
If you don't have direct rendering (scroll down past this indented part if you have direct rendiring), run this command:
Code:
cat /var/log/Xorg.0.log | grep EE
If the output has this somewheres...:
Code:
(EE) RADEON(0): Static buffer allocation failed. Disabling DRI.
(EE) RADEON(0): At least xxxxx kB of video memory needed at this resolution and depth.
...then continue. Otherwise, post your /var/log/Xorg.0.log file, your /etc/X11/xorg.conf file, and anything else you can provide.
If you found the above "buffer" error, then find any "subsections" in /etc/X11/xorg.conf that tells Xorg that you can use Depth 24 or higher, like this:
Code:
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
...and then comment them out, like so: (you can also delete them completely, but that is not recommended)
Code:
# SubSection "Display"
# Depth 24
# Modes "1024x768" "800x600" "640x480"
# EndSubSection
This effectly forces Xorg to use depths below 24. This will reduce screen quality (not too much, though).
Reboot your computer again. If you still get a "no" when you punch in the command "glxinfo | grep direct", then post your /etc/X11/Xorg.0.log file, your /etc/X11/xorg.conf file, and anything else you can provide.
Part 2 - Making the Computer Stop Crashing
Dapper Users
We need to upgrade the drivers. Doing so will break a few other things, which we will also upgrade. Run the following commands:
Code:
sudo apt-get install nano
sudo nano /etc/apt/sources.list
Now replace any mention of "dapper" with "edgy", except for the cdrom entry, and remove any single "#".
Type in the following commands:
Code:
sudo apt-get update
sudo apt-get install libgl1-mesa-dri
sudo apt-get install locales
sudo apt-get install gtk2-engines-ubuntulooks
(The locales and ubuntulooks need to be updated, since they break after installing the new X version.)
NOTE: If it says that it cannot find packages, or they are broken, etc, please check to be sure that there are no single "#" in your /etc/apt/sources.list and that "dapper" is replaced by "edgy" everywhere! (IOW, make sure that all the repositories are uncommented.) If you still have issues, post the errors, and your /etc/apt/sources.list file.
That should do it. Replace "edgy" with "dapper" in the /etc/apt/sources.list file again, and restart your computer.
Edgy Users
You are done. That's right. Done. Everything should work at this point.
Some Final Notes
- If you had the "buffer" error before in Part I, and had commented out the "Depth 24" lines in your xorg.conf file, try uncommenting this to see if you can get better quality now that you've upgraded drivers.
- If you have issues, please post the output of /var/log/Xorg.0.log and the file /etc/X11/xorg.conf.
- Also, be sure to let me know if your card works, and also qualifies for the "Cards that Work in this HOWTO" section at the top.
(OPTIONAL) MergedFB and Xinerama
Let's say you are working on a document, or chatting with a friend. Suddenly you need to be able to view two windows at the same time. Wouldn't it be nice if you could have a screen twice as big so that you could have the two windows side by side?
OK, you get the point. MergedFB and Xinerama both provide you with two screens. The main difference between the two is the fact that MergedFB provides 3D acelleration, while Xinerama does not. MergedFB can only be used on the M6 LY card if you run at 800x600 (if your card only has 8MB, like mine), but for some it might be what you want.
Follow this HOWTO for Xinerama and/or MergedFB. Just be sure not to use any others besides Xinerama or MergedFB, since the others are meant for NVidia cards.
http://www.ubuntuforums.org/showthread.php?t=221174
If you configured MergedFB, but it won't work, or 3D won't work in it, please be sure you commented out any resolutions higher then 800x600 for 8 MB cards. To tell if you need to do this, look for any warnings about "At least xxxxx kB of video memory needed" in your /var/log/Xorg.0.log file.
You can post at this HOWTO for support for either of these methods if you want.
(OPTIONAL) Beryl
You might've heard about Beryl. You might've even seen screenshots or videos. If you didn't know about Beryl until now, then you are missing out big time! Beryl is a new window manager that provides different cool stuff for your desktop. The best way to know what it is to go here: http://www.beryl-project.org/features.php
Alright, so you are probably ready to go. First read the following notes which are really important:
- Never ever ever EVER install fglrx. I'm speaking from experience.
- You need to follow instructions for AiGLX, and not XGL!
Now you are ready. Follow this HOWTO:
The HOWTO is missing! Help me find a decent HOWTO to link to!
If you have issues, you should really post on Beryl's forums or mailing lists.
Troubleshooting
Radeon Mobility IGP340 chip Users
User kingkookie reported that his card didn't work fully until he changed "AGPSize '32'" to "AGPSize '8'" in xorg.conf. If you have this card and are having issues, try this.
After Applying Latest Update To fglrx Kernel, 3D Acceleration Is Lost
User spaceghoti reported that "after applying the latest update to wine and the fglrx kernel, all of a sudden I've lost my 3D acceleration." If this sounds like your situation, read this for the complete details on the problem and make sure that this is really truly what is going on for you. Then follow the solution he listed.
Special Application Notes
If you find any more applications to add to the list, AND your card is/qualifies to be in the "Cards that Work in this HOWTO" list at the top of this HOWTO, then please let me know. Include your card name, the application, and the notes.
- Scorched3D
If the terrain and/or other items appear white with no texture, make sure AGPSize is at or above 32. If AGPSize is correctly set, try bringing the quality down one option at a time. Also, you must install this program while you still have "edgy" punched into the /etc/apt/sources.list file. The reason is that Scorched3D from Dapper has some bugs that are fixed in the new one. So far it has been completely stable for me, whereas Dapper's Scorched3D would crash at times. - BZFlag
I noticed that if I don't let the Server List or the Message of the Day (in the lower right corner) load before I start moving, it sometimes crashes.
Revisions
May 12, 2007 - Added Feisty support, and made some minor modifications everywhere.
March 14, 2007 - (Thanks to ppietryga) Added xlibmesa-dri to list of things to install to be sure 3D drivers are installed.
January 13, 2007 - (Thanks to spaceghoti) Added new item called "After Applying Latest Update To fglrx Kernel, 3D Acceleration Is Lost" to Troubleshooting section.
December 30, 2006 - (Thanks to ryanjdill@gmail.com) Changed the fglrx warning to be less "must reinstall" and more "good idea to reinstall", since some users reported 3D still worked even when system had fglrx on it, but was removed.
December 26, 2006 - (Thanks to ac251404) Added a note about fglrx under "Important Stuff to Read".
December 9, 2006 - Added Beryl, MergedFB, and Xinerama support.
December 6, 2006 - (Thanks to 2hansen) New xorg.conf, which works a LOT better.
December 6, 2006 - Edgy's included drivers are best - updated HOWTO accordingly.
November 26, 2006 - Changed "driver-ati" to "video-ati" for some apt-get commands.
November 5, 2006 - Added BZFlag to list of "Special Application Notes".
November 5, 2006 - Added Edgy support, and made HOWTO easier to read and more organized.
October 29, 2006 - Added nnote that this most likely won't work in Edgy.
October 22, 2006 - (Thanks to Efrain Valles) Added the "change 'Driver "ati"' to 'Driver "radeon"'" to Part I.
October 22, 2006 - (Thanks to kingkookie) Added first item in Troubleshooting section.
October 19, 2006 - Did some organizing to make this HOWTO a bit easier to read.
September 15, 2006 - (Thanks to altern) Fixed the typo where I said "AGPSize 32" in one example, and "AGPSize 16" in another.
September 10, 2006 - (Thanks to Beanalby) Added the "static buffer" error fixes at the end of Part I and Part II.
September 3, 2006 - (Thanks to Cinquero) Added a note in the "Important Stuff" section saying that this tutorial won't solve all freezing issues.
September 1, 2006 - (Thanks to Eladan) Added a paragraph and note after the "apt-get install libgl1-mesa-dri", etc., commands.
September 1, 2006 - Added the "Special Application Notes" section.
September 1, 2006 - Added last paragraph and a,b,c list to bottom of "Cards that Work" to clarify what I meant by "works with this tutorial"
September 1, 2006 - Changed AGPSize from 16 to 32 - more stable this way.
August 30, 2006 - (Thanks to termite) Added "Radeon 7000" to the list of compatible cards. This change was undone - it didn't actually fully qualify for the list.
Bookmarks