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
Am i right or is this old news. The files released didn't contain the information for 3d programming. But as far as i know they should be also released as soon as the laywers give their nod.
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
"...but the sooner I can move off that, and onto something nice and open, the better."
And how long is "sooner"?
~10 days ago ATI released 2D spec documents for R5xx and R6xx, than bit later Novell released their 2D "radeonhd" driver. Let me repeat: it is ONLY information on 2D programming. 3D documentation will follow when they can clear it up for a release (i.e. make sure that those docs don't have legal issues) and coding 3D portion hasn't even begun yet. At least R5xx should be similar to R300 & R400 as main difference is Avivo, but R6xx will require probably a completely new driver, so maybe it will be based on Gallium (new Mesa architecture).
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.
What are those code words in your signature? I feel like I've seen them somewhere before...
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.
Will this allow the community to create drivers capable of using the gpu as a GPGPU accelerator?
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."
Hint: These are the documents to generate a driver that's more than enough to drive Xorg. Documents for 3D acceleration are still being hacked on by AMD Legal.
So yeah, while it's not useful to everyone who's waiting for higher performance open source 3D graphics. But for all of those people who simply can't use their machines with X, this is a huge start.
Can you point me in the direction of the full 845 specs you mentioned? All I could find on the Intel site was register documentation. I couldn't find info about stuff like 3d acceleration. Maybe I overlooked something.
According to phoronix (http://www.phoronix.com/scan.php?page=article&item=850&num=1) a major OEM, probably dell, is insisting that "hardware suppliers must either have an open-source driver available or be able to provide an open-source driver within the next twelve months". Looks like Dell selling ubuntu is providing traction.
Hopefully Nvidia will release their specs...
What is stopping AMD from making their own driver for linux?
Why does it have to boil down to some volunteers to create a driver for a multi-billion dollar company for free, instead of said company creating and releasing their own drivers?
I'm not trolling, I'm being serious.
I don't get why the OSS community is rolling over and making these drivers. While I am aware this will make ATI drivers a lot more stable, I don't see why nVidia can create their own drivers but AMD/ATI can't.
What is to stop other companies from just not bothering to create linux drivers and instead release the specs and let the community do the work, saving them money and making sure that any support issues are "not their responsibility"?
Just keep buying nVidia cards to be honest. At least they actually bother to create drivers, instead of outsourcing them and then be able to deny any responsibility or support.
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 ]
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.
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?
If you have "Set Pin 8 up and set the data lines to the address in DMA that will load the texture in 8-bit format..." help someone design the silicon that does it? 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.
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.
"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."
Nationalism is to nations what GNUism is to open source.
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.
I am building a media centre PC with a mATX board I have kicking around with an AMD 2800+ and an ATI 1600 in it, and really considering just running Linux on it, now I have a friend that wants to trade the AGP X1600(ATI) for an Nvidia 6800agp card and I am wondering which has better support under linux, I'm not concerned about the 3d right now just the dual output support and the respective video (I mean movies) support. My 1600 has 512meg on it but if driver support under Nvidia is better I would trade him for the 256Meg 6800. I haven't really used linux since about 2000 and then it was slackware I installed, but for media centre I would need something my girlfriend could actually figure out to run movies, mp3's etc... is there any real difference between ATI and Nvidia drivers on Linux?
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.)