I'd like to thank you, guys, for the good work you've done over R500 and below. I was impressed, after installing fresh Kubuntu 8.10, and seeing Desktop Effects ON at the very first run. I still can't dare to install fglrx 8.11 (though, the responses are good), cause I really haven't got any real need to replace radeon, by this moment. ;-)
Make the cards boot in a DRM-less mode. That means that in a regular Linux boot, you can poke around at the registers but none of the DRM-related registers will actually do anything. Or decoy results if you think that's better. To activate the DRM-functions, use some binary magic in the closed source drivers. That should put a major reverse engineering effort that no open source hacker has interest in doing before you can even begin to poke at the interesting bits.
In addition, make a registry scrambler so that the closed-source DRM-enabled mode all use different addresses than the open mode. I imagine this can be implemented at essentially no cost or performance in hardware. Then you'll simply use a list of defines like:
On top of that, you could maybe try having a shared secret key between the DRM mode and your driver to encrypt (or at least obscure, if it's too much of a hit) the communication between the closed source driver and the hardware. That's another bit they'd have to figure out that again wouldn't impact open source functionality at all.
I'm not really sure how strong this protection is if you can run the exact same code on both platforms and compare calls, but it'd at least be a good attempt at security by obscurity (that's what DRM is anyway) that wouldn't make the documentation directly applicable to the closed source version at least. And that's the one they'd have to work with to try touching the DRM.
Understood... the issue is that we are one year into the project but the GPU design pipeline is more like 3-4 years long. Business realities make it unlikely that we will be able to redo anything in the pipe which has already been designed. The future will always be better, but the challenge is getting support into users hands today ;(
i think most of us will agree when i say, that ATIs gpus are pretty darn good ;)
its just that, the more you get the more you want
and now we see the 3d drivers comming and start to fantasize what could be done after that!
me for example cant wait to have a gallium3d radeon driver with dri2 opencl and acceleration for a whole bunch of thinks ^^
just havening a really smooth and eyepleasing experience and of course playing some games at moderate speed...
but hey thats still in the future and im happy to have open source support for me hd3200 so:
thanks for the great work and keep going!
do you know if you/they will have the documentation for the next series of aticards ready soon after to their release?
At that point, it would be really good if the lawyers could all easily agree that well our open-source support is no problem at all and has very little do to with the hoops they have to jump through in order to be DRM compliant. So if changes need to get into the specs now in order to reach production in 2011-2012, then try being so preemptive as possible rather than dropping support again for 3-4 years when you end up needing them.
I certainly hope we'll have initial support much sooner than that, but you probably know better than anyone the difficulties involved. Don't take this the wrong way, but I'm not convinced AMD will always stay as committed to open source as they are today. Anything that will cut down on the legal review time and associated cost in the future will help ensure that we'll continue to have open drivers. We completely agree that getting the support out there today is important, I just hope you get some time between the paces to think of the long term too.
Though both companies would feel some serious pain, and Apple would clean up the market.
"What do you mean my £500 graphics card is a doorstop because some twerp broke the HDTV encryption? I'm talking to my lawyer!"
I doubt it. MS doesn't make the rules here either.
Also I speculate that this is not only about PVP, there could be other (patented/licensed) IP involved, so companies which sold licenses for it don't want it to become part of FOSS implementations (e.g. DXTC stuff).
So, it's a risky situation for AMD (and I suppose that Nvidia wouldn't be in better position), but it seems enough information needed for 3D driver will be aproved while not causing legal harm and increasing risk of hacking cards (although someone might as well use existing radeon RE tools to find out missing parts).
Yeah, I think we can make this succeed -- it's just a lot of work cutting carefully around the information we need for a general purpose driver and staying safely away from the dangerous stuff.
The open source graphics project is based on the premise that if decent open source drivers are available (2d, 3d, video render accel) then developers are not likely to invest a lot of time and effort reverse-engineering and publishing the remaining IP. If things don't work out that way, ie if there is significant reverse engineering done in the areas where we do not publish specs, then we would probably have to either stop giving out specs for future GPUs or cut the degree of support we provide down significantly.
I don't think we will have that problem, however -- there are enough *other* big challenges in the X world than just reverse-engineering our secret video bits :D