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."
Why would anyone care? How is this front page news?
-1 overrated isn't the same thing as "I disagree".
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
Probably not, I have a feeling that this might have more to do with AMD not wanting to maintain drivers forever. Previously they would just be dropped, but if there's an opensource driver, people could maintain a Win XP driver for a particular card indefinitely, same goes for video cards that will eventually not be supported by new versions of Windows due to a lack of drivers.
or Microsoft was once again successful in convoluting the desktop OS software development requirements such that it was easier to port a Linux driver to WinCE than to port a "Windows" driver to WinCE. I've heard over and over during the years that it's easier to rewrite than port anything written in Microsoft dev API's to another platform. That includes that embedded thing they also called Windows.
LoB
"Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
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.
"Free Software" and "Open Source" are just ideologies. In general, most Free licenses are considered Open Source and vice-versa.
The MIT license, under which the driver is licensed (not BSD) is considered both Free by the FSF and Open Source by the OSI.
Dilbert RSS feed
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.
I have no idea about that, because the only games I play in Linux doesn't require modern 3D drivers.
But, to get graphics acceleration in VMware virtual machines, the community radeon driver won't do. The catalyst one works.
2011 will be the year for Linux (graphic drivers) on the desktop!
so it's official, the FOSS drivers are better than the proprietary drivers?
Probably not
Not so fast. The answer depends on your definition of `better.' If by `better' one means `survives vendor indifference' (Catalyst wasn't cutting it, for some reason,) then yes, the FOSS driver is indeed better.
That is, in fact, what appears to have happened here; the hardware had to work, so they found a way. The driver they came up with is considerably better than no driver at all.
This whole thing is rather telling. Linux is doing rather well in embedded systems. So well that drivers are now being ported from Linux to Windows. The best embedded GPU drivers (powervr, mali, tegra) are Linux, or at least not Windows. The software for certain advanced features available from ARM vendors (codecs, hardware crypto, etc.) have Linux as their reference implementation. This is all due to the success of Linux on Android, a plethora of set-tops, music players, cameras and other embedded systems.
Lurking at the bottom of the gravity well, getting old
You repeat yourself. Better/worse are not absolutes. You can have:
1. Item A is better than Item B
2. Item B is worse than Item A
3. Item C is better than Item B
4. Item D is better than A, B, and C
5. Item D is crap.
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
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.
The nvidia drivers are useless without xrandr support. Fglrx may be a mess but at least it doesn't reimplement standards on the linux desktop.
I stopped using Gnome Shell because the open source driver overheats my system and catalyst wasn't compatible. Does this move implicates that the open source radeon driver doesn't suck anymore?
But... the future refused to change.
In the 7ish years I've been using the nvidia binary driver, I've *never* knowingly been roadblocked by some program saying, "Sorry, this won't work because xrandr doesn't exist."
Yes, that's only one man's anecdote, but it's good enough for me.
"I don't know, therefore Aliens" Wafflebox1
We *want* AMD to be making money off of the linux driver to keep them interested. If they depend on it for a commercial product they're going to keep pouring resources into it. As it is I can't even get my LCD panel to show a picture in the right spot (it's shifted up and left on two radeon cards, perfect on nVidia/nouveau). It needs more engineering resources, and this Windows blob might just be the enticement they need.
I realize copyright law is going to be a problem to navigate around, but we should really find a way to make this work, not complain about perceived injustices.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
OMG, a title of "AMD Ports Open-Source Linux GPU Driver to Windows" from 2 functions? That's pathetic. They must be really hard up for anti-MS posts if that really is what it's about.
LoB
"Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
I HATE Microsoft Marketing.
We don't care. And neither does MS.
I want to delete my account but Slashdot doesn't allow it.
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...
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...
Well, they're not huge, but they're a bit bigger than that - radeon_suspend_kms is 67 lines, radeon_resume_kms is 38 lines. http://lxr.free-electrons.com/source/drivers/gpu/drm/radeon/radeon_device.c
See subj.
So... pretty much like any software company?
Try nouveau if you have a nvidia card, it works very well.