AMD Releases Register Specs For R5xx And R6xx
ianare writes "AMD has recently released register specifications for the ATI Radeon R5xx and R6xx graphic devices. This will (theoretically) allow the OSS community to develop drivers, given time. In fact, engineers from Novell have released a first alpha quality Open Source driver which currently supports initial mode settings. Although current work is focused on 2D, rather than 3D acceleration, this type of information sharing could conceivably lead to an OSS 3D driver."
How about the R250 you jerks!!! My Mobility Radeon 9000 is slower than it ever has been under the open source driver! :(
With shader 4.0 benchmarking!
Hurrah! I just bought a Radeon X1650 Pro this weekend trusting that AMD would honour their commitment to open up the specs for their ATI cards, and I'm glad to hear about this. I'm currently running the ATI binary driver, but the sooner I can move off that, and onto something nice and open, the better.
Get your own free personal location tracker
These files are 12 days old. Aren't these the same files that were released sometime last week?
Get your own free personal location tracker
And it appears that the real news is the alpha-quality, open-source driver. There doesn't appear to be any release of specs other than those done around the time of the previous announcement.
... *shakes head*.
Oh, it's a "Zonk" story
The release of the alpha-quality, open-source driver was announced on Tues 18th Sept.
....
Yep, it's a Zonk story
Note that the reason why Novell's engineer were able to deliver an alpha driver this week is because they had access to the ATI's specification under NDA since two month.
So the driver isn't the result of only one week of work, even if it's still in an alpha state.
Let's hope this will encourage manufacturers to "systematically" develop linux drivers !
Minutetraders | Voice Exchange Marketplace - Buy/Sell
Given the quality of their *nix drivers...
But I think ATI made a smart move. Outsourcing driver development to the OSS community certainly cuts costs.
We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
So, if you want to run OS software on your OS operating system then now you will have to use OS drivers. Doesn't this just encourgage the hardware developers to leave it to "the community"? How many other companies will do this now?
I have excellent Karma and I am not afraid to Troll it.
They are from the next series of "Lost".
I have excellent Karma and I am not afraid to Troll it.
That the words 'texture', 'instruction pointer' or 'blitter' appear nowhere in either PDF file is a bit of a giveaway.
Whilst the registers are essential for getting any kind of driver to work, the documents don't describe the exciting features of the graphics processor. They give you enough control over the memory-controller timings to convert any Radeon card into a smoking brick with a small kernel-mode driver, but they don't give instructions which actually make the graphics silicon do things. There's no indication of what the machine-code for the vector processors looks like.
If you compare this to the documentation that Intel has for its (obsolete) 845 graphics controller, you notice that the whole block of registers for controlling even something as basic as the blitter, let alone the 'set instruction pointer for processing unit N' registers which actually let you set the high-performance processing units in the card to work, are missing.
These documents let you use an R500 or R600 card as a frame buffer. Not worth making a song and dance about that one.
Myself, I'd be fascinated to see documentation for the Intel G965 like the documentation for the G845; it clearly exists, there's a paper in the most recent Intel Technical Journal about low-level programming on the 965, it's just not available to mortals unless by attempting to reverse-engineer the x.org 965 driver.
He just doesn't want us to forget important news like this! You prick!
If I remember correctly, AMD have stated that there is more to come - the specs and documentation covering the 3D functions has been promised for the "near future". The reason for the delay is due to patents and third party code in those areas and have had to take greater care to make sure the specs and docs aren't encumbered. I hope they follow through on this.
"...So I hung back and lurked. For 18 months. Can't beat a good old-fashioned lurking."
Hopefully Nvidia will release their specs...
Wish they would focus more on video acceleration. Linux HTPC's need to be able to decode 1080p without using a powerful CPU.
Cheaper for the companies. Better for the community.
The only losers are the companies (eg. nvidia) that compete with companies clever enough to do this, and companies (eg. microsoft) who have a vested interest in there not being any Free Software drivers.
...as if there are legions of qualified 3D device driver writers just waiting around with nothing better to do.
Writing drivers for 3D cards is difficult work. "Release the specs and we'll write the drivers" has been the mantra of the open source community for years, but I think we're all in for a disappointment if we're expecting feature-complete, high-performance open-source drivers for these cards any time soon.
I think some kind of sponsorship to dedicated, full-time devolopers is going to be necessary if we want to see drivers that can compete with even ATI's crappy binary drivers. Otherwise I'll bet the hardware will be long obsolete before the drivers are complete.
Well, if they said "that's all folks" then it'd not be much. But they've said 3D specs are coming, and you have to walk (2D) before you can run (3D) so it's better they release 2D when it's ready and 3D soon than nothing now and then all at once. Let's just hope that they'll actually give complete specs and not some half-accelerated stuff.
Live today, because you never know what tomorrow brings
Note that the opensource drivers are only available in the recent releases on most distros. Some not so-recent releases did disable the R300 driver because it wasn't deemed stable enough (opensuse 10.0 come to mind).
So either the GP poster will have to update to a more recent release of his favorite distro (latest Ubuntu FF and openSUSE 10.2 have it enabled by default. I don't know about the others distro).
Or if he wants to keep his current installation for some reasons, he has to get the latest DRM (kernel drivers) and recompile them along with the Mesa3D library that corresponds to his X.org server.
(Note that older versions of Mesa3D are sensitive to versions of Xorg. If you start getting a lots of errors about undeclared stuff when compiling or missing functions at link time, then try to recompile a Mesa release with the same major and middle numbers as the one from your distro - i.e.: keep 6.5.x or 6.4.x depending on your Xorg).
If you read the instruction on Freedesktop linked above, it's not difficult at all.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
hey, if 2D works already then 3D is just one more D to implement. we are 2/3rds on the way to linux 3d nirvana!
http://validator.w3.org/check?uri=http%3A%2F%2Fwww.slashdot.org Errors found while checking this document as HTML5!
Note that, with the availability of Mesa3D's source, it's not that much difficult to provide open source drivers for Windows, at least for openGL.
The 3DFX source community has been doing it since a long time. Because the source of the Glide API (the low level talking to 3DFx hardware) has been available, since the demise of 3DFx and because windows XP didn't provide any support for openGL on Voodoo boards, a stack made of the opensource Glide and Mesa3D has been quickly released by the community (enabling users to play Quake3 and other openGL games at reasonable frame rates).
(Note that, in that precise story, becase the Direct3D driver were closed source and nVidia's IP, those were much more slowl to develop. Nonetheless, in a paradoxal way Voodoo boards are among the few supported hardware under Windows XP 64bits, because partial availability of source code enables the community to quickly develop a port, whereas other hardware may not be ported because the makers see little benefits in supporting an OS that has an even lower market share as Mac OS X and Linux)
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Welcome to the nice world of 2007, where graphic cards have more in common with supercomputers than with hardware blitter and rasteriser of early Amigas and 3DFx'.
More seriously, once the 3D specs gets released, due to the highe programmability of latest generation of hardware, the 3D specs are probably going to contain much more information about building and uploading fragments, and setting up input and output streams, than occurence of the words "blitter" and "texture". In fact, I don't actually know if the R600 has a dedicated hardware blitter, or if blitting is produced by programming the general purpose stream unit used in 3D in a special way.
(Perhaps it's like complaining that specs of modern sound cards doesn't feature the words "ADSR envelope filter" and "LFO")
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
you should have bought an Intel motherboard.
Obviously your priority for open source is below your other priorities.
When ATI were making their first murmurings of releasing specs a few weeks ago, I have to say I wasn't convinced - I've been burned by ATI's shoddy Linux support in the past, and it was going to take alot of convincing that AMD (traditionally very friendly to FOSS) was trying to steer the ship in a different direction.
And now they've released scads of docs - kudos. This was probably the only way to make a FOSS driver a reality without violating reams of licensed IP. On top of that, I believe their latest set of Linux drivers fix a number of long standing issues, as well as vastly increasing 3D performance (although obviously there are still are QA problems).
Granted, it's almost all 2D stuff at the moment, but being able to ship a functional, fast and non-crash-prone driver for ATI cards with every modern distro will be another win for Linux in general.
I'm quite interested to hear about advanced features though - will implementing things like iDCT in XvMC for MPEG2, MPEG4 ASP and H.264 be a reality? Can these things be implemented with 2D registers or do these things need to be run through the 3D shaders nowadays? The low end ATI cards, including the IGP's, would be ideal for HTPC boxes, espcially with Intel dragging their feet on similar support/documentation for their (admittedly otherwise excellent) GMA X3xxx series.
Moderation Total: -1 Troll, +3 Goat
Of course, this news comes just after I've replaced my ATI and AMD with a screamin' fast Intel and NVidia rig.
I agree that releasing specs is a step in the right direction, but all of their products are kinda bland right now, and they lost their price advantage over the summer when Intel went apeshit with deep price cuts, and that's before even considering that current Intel chips can be overclocked to ridiculous heights with little effort.
The Linux distros have always been good to low-end hardware, but there's something absolutely erotic about running it on an overclocked quad-core beast with a really beefy video card. Linux lets you max out the power in ways that Windows can't even conceptualize, and Compiz Fusion beats the tar out of Aero Glass.
One can only hope that AMD's bone will entice competitors to follow suit.
-Billco, Fnarg.com
i doubt specs would include 3rd party code.
patents seem to be a better excuse this time.
Rich
I develop drivers for a living (actually for the last year I haven't). I went through the docs a few weeks ago - I spent about 2 hours having a "good" read.
These docs will let one do the following
1 - Setup you own video mode
2 - Setup up a video overlay (not video acceleration)
3 - Setup a full colour mouse cursor
That's all. These do not explain how to blit, alpha blend, scale, ROP2, ROP3 or ROP4 or perform any other transform.
This is useful, but not _that_ useful!
Hopefully there will be more to come specifically more on the memory/cache controller (essential to get performance up), more on the PCI/AGP bus control, more on the 2D source/dest blit registers, pitch, loop counters and I'd like to know how much of the 2D guts is programmable. TBH I thought we'd have moved on to the point of (somewhat) programmable shaders for 2D these days with loops etc built into the HW (0 clock loops and addressing etc).
Time flies like an arrow. Fruit flies like a banana.
They are in rot13 encryption, then you have to read them backwards.
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
Matrox promised full specifications including 3D capability for the G200 series cards back in 1998. Being an idealistic sucker, I bought a G200 based on those promises.
Those specifications, promised nearly ten years ago, never arrived to my knowledge. If they ever did, it happened long after the G200 was obsolete.
About six months after wasting money on that G200, I bought a Riva TNT2 and have been an NVidia customer since then. They don't make empty promises that we MIGHT be able to write a decent working driver some time after the card has been obsolete for over a year and fail to deliver on those promises, they deliver a working driver that gives the customer 3D capability *NOW*.
Simply put, if you want working 3D support under Linux, NVidia is still your only option, and probably will be that way for a long time. The current ATI "news" so far sounds to me exactly like the Matrox "non-news" nearly a decade in the past.
retrorocket.o not found, launch anyway?
1.Which features of the cards ATI will never document (will we see documentation for the TV out functionality in these cards for example?)
and 2.Which features are going to take the longest to document (because of patents/3rd party code)
> What is stopping AMD from making their own driver for linux?
Money? Talent? Time?
> I don't get why the OSS community is rolling over and making these drivers.
We've only been begging for specs like these since forever, and we want lots more. Did you miss the whole story about the kernel team offering free drivers given sufficient specifications? If they make the driver, it'll almost have to be closed source, and then it won't be maintainable, so future kernels won't be able to use the hardware, etc.
This isn't a "concession" on the OSS side, it's a dream come true.
> If it isn't the silicon doing it, then the company is using your CPU to do work it is supposed to be doing on the GPU.
GPU's are mostly just linear arrays of FPUs with an optimized memory architecture, and they've been that way for some years now. If there is no speed benefit to hardwiring the notion of "triangle" and "texture" into the silicon, then there isn't a really compelling reason for it. 3D drivers these days include optimizing compilers for shader languages. Still, no one's asking for the shader compilers and texture compressors, we're just asking for whatever magic bits we need to send over the bus to tell the card "this is a texture", "this is a vertex array", "this is a shader", and so on. Of course those specific bits are already figured out, but there's plenty of other similar details, like limitations that need to be respected lest stability is impacted, that aren't.
Done with slashdot, done with nerds, getting a life.
I no longer HATi you!
WARNING: Smartphones have side effects--most of them undocumented.
I've taken a quick look at one of the manuals.
The register descriptions are one thing. A little wording around that to explain what is what and how it works is another thing that changes things from very tedious to workable.
In a processor manual you see that the 0xaa opcode has the "ADD" mnemonic, and does a = a + , and sets the flags. This AMD manual has the level: "0xaa is called ADD", and nothing more. With a bit of imagination and some previous knowledge how things normally work you can probably figure it out, but the exact operation still has to be reverse engineered.
Lets hope that hte "More to come" is serious. (or that the developers immediately know what's going on if they just know the mnemonics for the registers....)
I'd rather there be one set of really stable drivers than two separate sets. With having only one set, we don't have to worry about some advanced programs only running with one driver set while another advanced program we need to use at the same time requires the other driver.
While the OpenGL standard contains a lot of things of dubious use, a teapot primitive is not one of them.
I would guess that you might be confused because the library named GLUT has a function call that will render a teapot. GLUT is not a part of the OpenGL standard however. (But GLUT is used in almost all OpenGL tutorials I've seen, so it is probably an easy mistake to make.)