AMD Ports Open-Source Linux GPU Driver To Windows
An anonymous reader writes "An AMD engineer has inadvertently revealed that their Windows Embedded graphics driver is ported from the open-source Linux driver. AMD China last year began porting the open-source Radeon Linux kernel driver to Windows Embedded Compact 7, rather than using their Windows Catalyst driver. The resulting WEC7 driver for Radeon GPUs is proprietary, but that's allowed per the MIT license that the ATI-AMD Linux driver code is provided under."
The resulting WEC7 driver for Radeon GPUs is proprietary, but that's allowed per the MIT license that the ATI-AMD Linux driver code is provided under."
Some people don't consider something "Free" until it is free in perpetuity. I don't fully agree with people like this, but I see their point, and can acknowledge their definition.
On the other hand, this is pretty awesome, and probably makes a lot of sense. Graphics drivers for Windows are known to carry heavy optimization and code-sensing techniques in order to provide the best performance possible for Arbitrary Game Choice(tm). The Linux driver is however a good all-around driver without all this special pathing. So, it should be easier to port.
WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
so it's official, the FOSS drivers are better than the proprietary drivers? (more likely it's that the proprietary drivers are just worse than the FOSS drivers...)
I noted above, but I'll note it again. The Windows driver is known to have a lot of special paths for all the various cool games that people want to run as fast as possible. For Windows Embedded, they want a good all-around driver that is simple to port. This would be the Linux driver, as that's exactly what it is written to be.
WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
Actually, when you think of it, it's rather inspired. AMD does eventually drop support for old cards after a period, providing an opensource option allows for programmers to maintain support indefinitely. Plus, I'm guessing that this will increase the number of programmers interested in working on the drivers.
Your point being? The license is irrelevant. AMD, as the presumed owner of the Radeon source, could make the Radeon GPU driver for Windows Embedded closed source even if it was released GPL.
Yes, BUT not with any derivative code included. They would need to get a release from all the other contributors that were not working for hire for AMD. Namely, if I write an extra chapter to The Da'Vinci Code, and the original writer could totally change the license that the original Da'Vinci Code was released under, but could not include my extra chapter without my permission. (GPL makes this question simple, since you're already providing the source, you are known to be able to include any derivative works, since they also must be GPL.)
WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
I just gave a shout upstairs to confirm this. Mom says there is indeed weather out there. Interesting....
Actually, when you think of it, it's rather inspired. AMD does eventually drop support for old cards after a period, providing an opensource option allows for programmers to maintain support indefinitely. Plus, I'm guessing that this will increase the number of programmers interested in working on the drivers.
Except the WE7 driver won't be open source, so... no.
WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
Nope, not official at all. As an AMD Linux user, I can safely say that as bad as their proprietary blob is, it's still way better than the FOSS ones for actually playing games.
Did they take the code for free because they could? Yep. Did they offer anything back?
Umm, actually, AMD released the original open source driver and has contributed a lot to its development. So it's *mostly* paid people from the same company that makes the proprietary driver. You'll be hard pressed to find any of the Radeon open source devs complain too much about AMD on this, as they have really helped improve the state of AMD/ATI graphics support on Linux...
Primarily, it shows that the free drivers made by mostly unpaid people are so good that even the producer of the hardware uses them rather than their own code
Most people working on the Radeon driver are paid, as far as I know, even if not all by AMD.
Did they take the code for free because they could? Yep. Did they offer anything back? Not necessarily money, but what about saying "really good work guys, we will use it as well"? Nope. Why bother, it is free, isn't it?
Not true. AMD has offered a bunch of specs which were invaluable for the development of the drivers and contributes code too.
Not to mention their contributions to a bunch of other open source projects: http://developer.amd.com/zones/opensource/pages/default.aspx
While not perfect, they're better than most other companies, which don't contribute anything at all.
We should remember this when someone from the large business starts babbling about "appropriate award for our large investments and the hard work of our engineers" when explaining why we all have to pay again and more for their crappy software.
When did AMD start selling software? I paid them for hardware.
Dilbert RSS feed
I HATE Microsoft Marketing.
There is no such thing as Windows Embedded. There is Windows Embedded Compact 7, which is just WinCE 7. There is Windows Embedded Standard 7, which is a componentized version of Windows 7. Then there's Automotive and Enterprise and other crap.
The Windows Embedded Compact 7 driver is the one under question here, and I can understand why as the graphics stack on CE is quite a bit different from desktop x86 Windows. Plus, it has to be multi-arch - WEC7 runs on ARM, MIPS and x86 platforms, so the open-source driver would be more portable.
And yes, it's different enough to be problematic. Things like DirectX are different under CE. Even Windows Mobile had a different DirectX stack. The WinCE one originates from CE 2.0, while the Mobile version dervices from XP. Along the way the definitions and capability bits have changed, a bit can be missing on one implementation or the other.
The last time I did a simple inquiry via DirectDraw and had effectively two different programs because the capability bits were not very common between the two. I'd imagine the 3D stuff would be equally messy.
And this is where people start wishing the code were GPL instead of MIT.
If the original driver were published with a copyleft license, those power management improvements would have to be shared when the drivers are released. With MIT, you can only hope that AMD will see the benefit of sharing their improvements.
You can argue about what freedom means all you want, but it's hard to argue that having almost guaranteed access to improvements wouldn't be good for the users of the Linux driver.
The resulting WEC7 driver for Radeon GPUs is proprietary, but that's allowed per the MIT license that the ATI-AMD Linux driver code is provided under."
I wonder what the source of the article is, that the driver will be proprietary.
I wonder if taking the code written by the community, port it to windows embedded and add some proprietary sauce to it was also part of the original plan. So maybe AMD sees Linux community as a form of cheap labor?
Nope. This is a fairly recent project, conceived and started years after we got back into supporting open source graphics drivers, and the request was for a driver that could be released in source code form.
Source
Or they can demand that all copyright is signed over to them so even though GPL they could fork a version with a different license. Some projects already do this, eg x264 which is now selling non-GPLed versions.
See the bottom of http://www.videolan.org/developers/x264.html
https://en.wikipedia.org/wiki/Inverted_totalitarianism
They didn't "port the driver", they copied two functions, radeon_suspend_kms() and radeon_resume_kms() across:
"I have ported radeon_suspend_kms() and radeon_resume_kms() functions from linux to CE. Actually I have validated that the evergreen_suspend() and evergreen_resume() work already on CE. But when the resume work is done and the screen is shown up, I found the 3D engine works wrong."
Since these two could well be little more than mov %radeon_register, $magic_value, the entire "ported driver" could consist of little more than a dozen bytes of code. Even SCO's lawsuit was built around more evidence of copying than this...
I feel sorry for all the windows users that can do nothing about it because ATI/AMD have shown time over that they're absolutely shit at software drivers.
And so we come full circle, because this is exactly why the GPL exists.
Everyone gets it wrong - the GPL isn't there to stop people "stealing your code" - it exists to make it possible for users to fix problems in the code.
Go read about RMS and the buggy printer driver.