Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
AMD Graphics Open Source News Linux

Open-Source 2D, 3D Drivers For ATI Radeon HD 5000 Series 245

An anonymous reader writes "AMD has now rolled out open-source 2D and 3D drivers for their ATI Radeon HD 5000 series graphics processors. As described at length over at Phoronix, it's taken nearly a year to complete but there is now public code released that enables 2D, 3D, and video hardware-acceleration for this latest generation of ATI GPUs. For now this code is intended for developers and enthusiasts but with time it will make its way into stable Linux distribution updates. AMD's open-source developers are also beginning to work on ATI Radeon HD 6000 series support, which is hardware not to be released until late in the year."
This discussion has been archived. No new comments can be posted.

Open-Source 2D, 3D Drivers For ATI Radeon HD 5000 Series

Comments Filter:
  • by Fallen Kell ( 165468 ) on Friday August 20, 2010 @08:29PM (#33320574)
    Since the 5x00 series cards also included built in audio for the HDMI connection, did ATI also make drivers which support the full functionality? Or is this just video only?
  • Re:nVidia (Score:3, Informative)

    by Grishnakh ( 216268 ) on Friday August 20, 2010 @08:30PM (#33320580)

    I guess my next video card will be an ATI card...

  • by Cyberax ( 705495 ) on Friday August 20, 2010 @08:38PM (#33320640)

    Uhm. ATI has OpenSource drivers for _all_ hardware starting from r100 for Linux. And all their drivers support KMS.

  • by Anonymous Coward on Friday August 20, 2010 @08:39PM (#33320648)

    Last time I had a laptop with ATI Radeon, they shafted me by dropping support for the proprietary drivers after a few years. Then my somewhat game-worthy GPU became a complete joke. When I lay down money for a GPU, I expect continuing performance in my games.

    Never buying ATI again under any circumstances.

  • That's Realtek (Score:4, Informative)

    by Sycraft-fu ( 314770 ) on Friday August 20, 2010 @09:09PM (#33320834)

    They just include a Realtek soundchip on board that handles the HDMI audio. So you'd have to look to Realtek for OSS drivers as ATi themselves doesn't control the code.

  • by Suiggy ( 1544213 ) on Friday August 20, 2010 @09:21PM (#33320898)
    ATI HD5770 or nVidia GTX260 or GTX460. If you want to be able to use the latest in OpenGL 4.x and OpenCL, you'll want to go with ATI HD5770 or GTX460.
  • by Minwee ( 522556 ) <dcr@neverwhen.org> on Friday August 20, 2010 @09:36PM (#33320988) Homepage

    I don't think that's what 'older' means. It may be hard to believe, but there are still systems out there with video chipsets older than the r100, and support for some of them can be a little shaky.

  • Re:That's Realtek (Score:5, Informative)

    by MostAwesomeDude ( 980382 ) on Friday August 20, 2010 @09:41PM (#33321004) Homepage

    I don't have an HDMI audio sink (feel free to send me one, BTW!) but HDMI audio should work on just about every Radeon that has it. The driver exposes the I2C controls for the audio to the rest of the kernel, and then the pre-existing ALSA code handles the rest.

  • by MostAwesomeDude ( 980382 ) on Friday August 20, 2010 @09:45PM (#33321020) Homepage

    Radeon firmware is used to program a few special-purpose chips on the board. Up until the HD series, firmware was only needed to start up the DMA engine and get acceleration going; modern cards need a second piece of firmware to enable interrupts, for e.g. low-latency audio and vsync.

    If anybody ever wanted to go out and reverse-engineer these blobs, they could, but it's really not worth the trouble since the level of functionality is so small and AMD already gives us bugfixes for the ucode when needed. That time might be better spent figuring out the patented parts of the chipset (video decoding, texture compression) which AMD isn't allowed to document for us.

  • by whoever57 ( 658626 ) on Friday August 20, 2010 @09:56PM (#33321078) Journal

    In my household, we have 3 Thinkpads with ATI graphics, all now running Ubuntu 10.04 and have not seen any of the issues you describe. At work, we also have Thinkpads with ATI graphics running Ubuntu 10.04 and have not seen these issues. I have been running a desktop with nVidia chipset and ATI graphics under Gentoo Linux and it is rock solid.

    Perhaps you got some bad hardware?

  • Re:nVidia (Score:4, Informative)

    by Trepidity ( 597 ) <delirium-slashdo ... g ['kis' in gap]> on Friday August 20, 2010 @10:11PM (#33321136)

    Traditionally, nVidia had high-quality but closed drivers for Linux, while ATI had a low-quality but open ones (they also had a closed one, but it was pretty bad too). The main change seems to be that ATI's released a lot more specs lately, and has devoted more attention to producing non-crappy Linux drivers.

  • Re:nVidia (Score:1, Informative)

    by Anonymous Coward on Friday August 20, 2010 @10:12PM (#33321150)

    OTOH, nVidia's proprietary blob has worked very, very well for many years, for me. I don't even think twice about which type of card to buy, when I'm buying; it's been utterly reliable and always yielded spectacular performance.
    ATI has been hit and miss (mostly miss, in my experience) for a very long time, as far back as (whatever came after) the original Radeons. Now that some non-AMD people can get their hands on the code, though, perhaps that will change.
    Personally, I see no reason to give up the phenomenal support that nVidia has shown us Linux users, though. They would have to do something spectacularly SONY-like to make me change camps, at this point.

  • T60 2007-GBU (Score:3, Informative)

    by aussersterne ( 212916 ) on Friday August 20, 2010 @10:15PM (#33321162) Homepage

    The ATI X1400 works fine in Windows (can even game for hours some weekends without trouble), though the driver support files had to be edited to make the driver installable, given that ATI no longer supports the chipset, so no Windows 7 drivers.

    That's 2D + 3D, rock solid.

    In Linux, even in 2D (no 3D) with KMS disabled on an unpatched radeon driver (both in F12 and F13), I get icon corruption, cursor corruption and tearing, and risky Xrandr operations. All gets much, much worse if you start to try to use external monitors with higher resolution than the internal resolution.

    A hack install of OS X Leopard with zero X1400 support using the X1000 driver works better, though you have to install Mouse Locator as a hack to hide cursor tearing. But once you do that, all is well, and it's much easier than installing all the needed patches for the radeon src.rpm to get stable graphics in Linux.

  • by mobets ( 101759 ) on Friday August 20, 2010 @10:17PM (#33321176) Journal

    My last NVIDIA card was a 6800 (not exactly new). Up through this card, NVIDIA's Linux support has been rock solid. I'm always confused when people complain about the lack of open source drivers when the proprietary drivers are so good.

    Also the install isn't hard:
    Download the installer and run it.
    On gentoo (great mythtv support): emerge nvidia-drivers.

  • Correction needed? (Score:3, Informative)

    by Futurepower(R) ( 558542 ) <MJennings.USA@NOT_any_of_THISgmail.com> on Friday August 20, 2010 @10:47PM (#33321322) Homepage

    Isn't there something wrong with this paragraph?

    "Seriously, before simply docking the laptop and running Nvidia, I was crawling through bugzilla applying patches to the source RPM for the Xorg nvidia driver to fix things as basic as icon corruption."

    Did you mean "Xorg ATI driver"? Otherwise, I got lost somewhere.
  • Re:nVidia (Score:3, Informative)

    by Grishnakh ( 216268 ) on Friday August 20, 2010 @10:52PM (#33321348)

    The fact that they're open source means they'll soon be able to support kernel mode setting, and integrate better into Linux distributions than Nvidia's proprietary stuff.

  • nVidia may die? (Score:3, Informative)

    by Futurepower(R) ( 558542 ) <MJennings.USA@NOT_any_of_THISgmail.com> on Friday August 20, 2010 @11:13PM (#33321410) Homepage
    "... if NVidia dies..."

    What SemiAccurate article indicates that nVidia may die? This one?

    Nvidia's Fermi GTX480 is broken and unfixable -- Hot, slow, late and unmanufacturable [semiaccurate.com].

    Quote: "Nvidia on the other hand did not do their homework at all. In its usual 'bull in a china shop' way, SemiAccurate was told several times that the officially blessed Nvidia solution to the problem was engineering by screaming at people. Needless to say, while cathartic, it does not change chip design or the laws of physics. It doesn't make you friends either."
  • Re:Awesome. (Score:3, Informative)

    by macshit ( 157376 ) <.snogglethorpe. .at. .gmail.com.> on Friday August 20, 2010 @11:36PM (#33321494) Homepage


    Reading through the comments, there's a lot of people who are still whining traditional anti-ATI whines, but AMD is being very smart about things, and is thinking in the long term. Nvidia will eventually follow, I'd wager, but Nvidia upper management is very stubborn and fixed in their ways, so it may take a while (in my experience, Nvidia engineering is much more enlightened in their views, but they don't set the company's policies).

  • by Thaidog ( 235587 ) <(moc.hsuh.myn) (ta) (357todhsals)> on Saturday August 21, 2010 @12:05AM (#33321618)

    But could they have been any worse? I always loved the way I hacked around for weeks trying to get 3D working after the drivers finally installed correctly and were apparently working correctly... all but 3D... and then to find out on some obscure link on google that the driver did not support it... but no mention to be found on ATI's site. But now that they are opensource these things can change! (Or at least be fscking documented correctly)

  • Re:nVidia (Score:1, Informative)

    by Anonymous Coward on Saturday August 21, 2010 @12:56AM (#33321806)

    Why? Unless the resulting drivers are actually better which remains to be seen, just the fact that they are open source is meaningless.

    It does make a difference. It means they will shortly be selling one of those cards to me. I need 3d, I don't need great 3d. I want my graphics drivers to ship with the distribution I use, not have to install from a 3rd party.

    Look around you, hardly anyone insists on using the best quality everything all the time, other factors come into play, price, convenience, service, relationships with suppliers. Personally, I consider the release of open source drivers to be a superior service than releasing binary only drivers. They increase the convenience to me by having updates in the main repo. Those factors outweigh the quality issues for me so long as it's good enough to do the things I want.

  • by imroy ( 755 ) <imroykun@gmail.com> on Saturday August 21, 2010 @01:20AM (#33321866) Homepage Journal

    ...for the life of me I can't figure out what I am supposed to do with an ATI card.


    apt-get install xserver-xorg-video-radeon firmware-linux-nonfree

    I recently upgraded my ancient Athlon XP desktop system with an AMD 785G-based motherboard and an Athlon II x2 250 processor. The on-board RS880 (HD 4200 equivalent) graphics works pretty well (I don't need much). It took me a little hunting to figure out which X.org driver to use (the "radeonhd" driver is older and now unmaintained). It was also sluggish and didn't play video until I installed the firmware package - thankfully I found a message in the X log file complaining about not being able to load the firmware file. I now run a custom 2.6.35 kernel with KMS too. Interesting things are happening with Linux graphics at the moment.

  • Re:And they suck. (Score:2, Informative)

    by Ethanol-fueled ( 1125189 ) * on Saturday August 21, 2010 @01:48AM (#33321936) Homepage Journal
    I have laptop with a mobility radeon, 9000 running 'Buntu 9.10, and it's rock-solid. I can spin the cube smoothly with multiple youtube videos playing in real-time with the rotation. Now, before 9.10, the damn thing crashed all the time. You may want to switch to a more recent version of your distro if you want things to work.

    I also had an integrated radeon (don't remember which, but still more powerful than the laptop) in my desktop which always froze up under Linux. I blamed buggy drivers as you did, but eventually Windows also started locking up. I determined that it was a hardware problem that Linux, for some reason, triggered more than Windows did.
  • by the Hewster ( 734122 ) on Saturday August 21, 2010 @01:52AM (#33321958)

    ATI HD5770 or nVidia GTX260 or GTX460. If you want to be able to use the latest in OpenGL 4.x and OpenCL, you'll want to go with ATI HD5770 or GTX460.

    This reply post contains many errors and is not at all informative. The grandparent asked for video cards that work well with open source 2D/3D drivers, the ATI card he cites only has experimental support only, and will probably not be functionnal for a while, and those 2 nVidia cards he cites have no working 3D driver AT ALL. Please mod that post down to the basement.

    The correct answer to his question is:

    buy an ATI Radeon X1900 or less video card, I suggest the X1650. These cards have good open source 2D/3D drivers, where released within the last 5 years and can run the applications you mentioned. Anyting more recent would probably be less stable, but will improve over time, and Intel does not build "video cards".

  • by Nysul ( 1816168 ) on Saturday August 21, 2010 @02:08AM (#33321986)
    You probably don't need a 5770, you can get a 4770 for about $30-60 cheaper and it will likely be more than enough. I can play any game out there right now on high settings at 1680x1050. If you run a higher resolution you do probably want the 5770. In
  • Re:Mac OS X (Score:3, Informative)

    by V!NCENT ( 1105021 ) on Saturday August 21, 2010 @03:12AM (#33322176)

    The open source drivers are expected to get 70% of the total performance of Catalyst/fglrx. However 2D has always been much faster with the floss drivers. The drivers are also much more stable, integrated and polished. Gallium now also has LLVM to optimize performance. Playing previous generation games like Prey and Half-Life 2 is not a problem.

    Furthermore, down the road, due to Gallium, it will also accelerate stuff like OpenVG.

  • Re:Mac OS X (Score:4, Informative)

    by TheRaven64 ( 641858 ) on Saturday August 21, 2010 @04:33AM (#33322340) Journal

    Gallium now also has LLVM to optimize performance.

    Last I heard from the Gallium guys, they'd given up using LLVM for anything other than the CPU fallback path because of the double mismatch between TGIR and LLVM IR and between LLVM IR and how GPUs actually work. LLVM is a low-level VM in the same way that C is a low-level language: i.e. only if your target looks a lot like a PDP-11.

    The nice thing, in theory, about Gallium, as you say, is the separation of state trackers from the back end, meaning you don't have to implement most of an OpenGL stack in your driver. In practice, this doesn't seem to be saving as much effort as was first thought.

  • Re:nVidia (Score:5, Informative)

    by ultranova ( 717540 ) on Saturday August 21, 2010 @04:39AM (#33322362)

    Why? Unless the resulting drivers are actually better which remains to be seen, just the fact that they are open source is meaningless.

    Says someone who's never had to try and update the latest version that supported his card by hand to make it compatible with the latest kernel. Linux doesn't have a stable driver/module interface, and that makes closed-source drivers an absolute pain.

  • Re:OpenGL? (Score:4, Informative)

    by TheRaven64 ( 641858 ) on Saturday August 21, 2010 @05:13AM (#33322430) Journal

    Warning: This post contains some massive oversimplifications. If you have worked on 3D drivers, then you will probably find reading it to be quite painful...

    A modern GPU actually does very little that is graphics specific. It is basically a stream-vector coprocessor. It's as much a general-purpose processor as the CPU, it's just optimised for a very different workload. The CPU, generally, is optimised for integer-heavy code with a branch roughly every 7 instructions. The GPU is optimised for doing more or less the same sequence of floating point operations to a large number of inputs with branches every few hundred instructions. You can run any algorithm on either, but any given program is likely to be much faster on one than the other.

    All of the OpenGL bit is implemented in the OpenGL state tracker. This may be part of the OS or part of the driver, depending on your target platform. This keeps track of all of the API state and issues commands to the hardware. The hardware basically (meaning, this is a really massive oversimplification) understands three commands: copy data to VRAM from RAM, copy data from RAM to VRAM, run program. All of the clever stuff is done using the third command, which runs some program (generated by the driver) on the GPU. There's also some other stuff for controlling the DAC or DVI/HDMI/DP outputs, but this is a relatively small part of the driver.

    With Gallium, the state tracker is completely isolated from the back-end drivers. For OpenGL, the state tracker is MESA. This generates programs in TGIR, which is an abstract instruction set that is designed to look like a GPU. The back end driver then compiles these for the target GPU (or CPU if the GPU doesn't support them) and runs them. All of the OpenGL-specific code is in Mesa, and is shared between all drivers. You can remove this and plug in an OpenVG or XRender state tracker (or even a Direct3D one, if someone wants to write one) to expose a different API (or you can plug in several at once) and the driver is completely unaware of this. It just compiles and runs the programs that the state tracker generates.

    In contrast, the older DRI drivers and the blob drivers contain their own state trackers. In the case of the DRI drivers, they contain a copy of Mesa (or just have some back-end code in the main branch of Mesa). In the case of the ATi and nVidia blobs, they have a complete OpenGL implementation.

    What you describe is basically how the old drivers worked. It's a lot of effort to maintain those, because the OpenGL spec evolved a lot over time, and now cards don't actually support any of the stuff that the old interfaces specified directly, the drivers just generate programs that the card uses to run them. It's also problematic because it ties the driver to a specific API, so if you want OpenVG or XRender support, you need to either write a new driver or implement these APIs on top of OpenGL, rather than running them directly on the card.

  • by Haiyadragon ( 770036 ) on Saturday August 21, 2010 @08:30AM (#33323136)

    Do the drivers support h264 hardware accelerated video decoding? Currently Nvidia's (awesome) vdpau is the only way to play 1080p movies without frame drops on Linux. These ATI drivers are only interesting if they have this capability.

  • by Homburg ( 213427 ) on Saturday August 21, 2010 @09:55AM (#33323798) Homepage

    At this pace you'll be able to enjoy stable and fast R700 hardware support another 3 years from now.

    When you say "three years from now," I think you mean "now." The machine I'm posting this from has stable and fast 3D support for its R700-based card from the open source drivers right now.

  • by bodski ( 1109235 ) on Saturday August 21, 2010 @11:15AM (#33324552)
    You are missing the fact that when AMD introduced their open source strategy, they had a huge backlog of 'IP' to trawl through and review before releasing the documentation. Things started slowly and the wait for my R500 based laptop GPU to reach a decent level of support felt like a long time.

    But from what we are seeing now AMD have made steady gains and have reached a point where they are releasing an OSS *driver* (albeit an immature one) for their latest GPU series less than a year after the hardware was released. Being able to 'drop' support for the proprietary drivers on legacy hardware earlier (in favour of the OSS driver option) will free up more developers within AMD to work on drivers for the latest GPUs. As the OSS driver team become and more more integrated within the workflow of the company we can expect to see OSS driver code and documentation get closer and closer to the hardware releases.

    In short it looks like things are paying off for AMD and the OSS driver strategy. Keep up the good work AMD!

  • by LingNoi ( 1066278 ) on Saturday August 21, 2010 @01:08PM (#33325624)

    That's why Starcraft 2 and Diablo 3 are pc only, why Portal was such a major flop that nobody has ever heard of and why there are currently over 2 million people [steampowered.com] playing multi-player on steam as well as millions playing eve-online, everquest 2, Guildwars, Puzzle Pirates, Star Trek Online, War Hammer, etc, etc..

  • Re:nVidia (Score:3, Informative)

    by TheRaven64 ( 641858 ) on Saturday August 21, 2010 @01:09PM (#33325642) Journal
    No, the security bug that he reported has not been fixed after one year. Another bug (one which allowed remote code execution in kernel space) is now fixed, but the fix came two years after the initial report. Please try reading what I wrote before you reply next time.
  • by dandaman32 ( 1056054 ) <dan@enanoc m s .org> on Saturday August 21, 2010 @07:19PM (#33328378)

    If NVIDIA doesn't get off their ass they've got some dark times ahead. They decided to get butthurt over XFX releasing cards with ATI chipsets on them, yet gamers are still sticking with XFX because their cards are such great quality. So they're losing parts of the gamer market, and now they have the chance to lose Linux users due to an open source driver being out there for ATI cards vs. only a closed source (albeit, admittedly, fairly high quality) one for NVIDIA cards.

    Currently an owner of an XFX GTX 260 card running on NVIDIA's closed source driver and Fedora 13. If I upgrade it's probably not going to end up in NVIDIA's favor, between XFX making good, high quality ATI based cards and AMD's open source drivers.

1 1 was a race-horse, 2 2 was 1 2. When 1 1 1 1 race, 2 2 1 1 2.