Qualcomm Makes Open-Source 3D Snapdragon Driver 84
An anonymous reader writes "Qualcomm today posted the source code to a Linux kernel driver for 2D/3D support on its OpenGL ES Core found on Snapdragon-based phones like the Nexus One. The company is trying to get this driver into the mainline Linux kernel, but it turns out that the user-space driver is still not open source, which has resulted in some problems already. The ongoing discussion can be found on FreeDesktop.org."
This is the great thing about Android. (Score:5, Insightful)
It's not only a great system, and it's FS, it's also going to drive other companies to do the same, and open their code.
It's nice to see kernel hackers understand ... (Score:5, Insightful)
Where they stand, and the power they have right now.
FTFA:
We are going to start to see a number of companies in the embedded
space submitting 3D drivers for mobile devices to the kernel. I'd like
to clarify my position once so they don't all come asking the same
questions.
I hope they use this new found power wisely.
Re:Compiz (Score:3, Insightful)
So many possible replies, so little time.
"Sorry. I didn't know that it was our fault that your distro of choice didn't pick up DRI2 sooner."
"Well, if you ran Fedora, this wouldn't be a problem."
"Why DRI2? DRI1 is just fine for compiz, as long as your server supports AIGLX, or even *shudder* Xgl."
"Well, obviously you won't buy ATI again; it's AMD now."
">implying ARM processor manufacturers ever release 3D code or specs"
"Really? Compiz? Your killer app is compiz? Not Blender or WoW?"
"So I know this is gonna kill my karma, but..."
Re:This is for you RIM, Nokia, Microsoft and Apple (Score:5, Insightful)
RIM and Microsoft are the ones who really have to be concerned. Apple will turn into a niche, though a very competitive one. Nokia however is pushing Symbian down the stack to their midrange and lower phones, reserving the high end for MeeGo, which holds to more "true Linux roots" than Android by being a common Linux stack from the kernel up through X.
That doesn't mean it's competitive, but it sure gives it one hell of a draw that many people lost once they realized Android was a Java-incompatible Java sandbox.
Re:This is the great thing about Android. (Score:4, Insightful)
I have no problem with both open and closed source softwre. I have an Nvidia graphics card and use their binblob drivers. As long as you trust the manufacturer to deliver quality drivers, there's no problem with that. The issue arises when people try to mix together open and closed software in order to reap the benefits of open source without giving anything practical in return.
In this case, Qualcomm are trying to avoid the mess of maintaining binary kernel drivers, while not actually providing an open source driver for their hardware. This shouldn't fly. They can either deal with kernel maintenance and binary modules themselves, or open their entire driver so the open source community can hack it, improve it, and get into a state where it can be merged into the kernel.
If this "open source" driver were merged into the kernel, it would still be tied to the closed source usermode binblob. That means the ioctl intervace is untouchable, which means pretty much nothing can be fixed (as far as the interface goes) without Qualcomm's cooperation. It also means that kernel developers have to trust the binblob, and the lack of specs also means that the behavior of the kernel drivers (e.g. their security) cannot be reasonably analyzed. This isn't good.
In fact, Nvidia have open sourced small portions of their drivers (the settings GUI and part of their kernel abstraction shim, at least), but they are maintaining these themselves. Really, there's no problem with partially open source drivers, you just can't expect open source developers to maintain the open source part for you.
Brilliant move (Score:4, Insightful)
Well, halfway anyways. Release the other half (the user space) part as FOSS and you'll be golden.
The biggest problem I've seen in embedded Linux is poor graphics performance. You have all this video acceleration that CE/XPe can take advantage of, and Linux doesn't get but a mere teaspoon of the graphics speed the hardware is capable of.
You really want to see your platform take off? Want your CPU sales to go through the roof? Give us something that is as accelerated as the Microsoft side of the equation. Give us the source. It won't hurt your sales. It won't help your competitors. Reverse engineering would take more time than actual R&D. Who wants to copy a video device that's already on the market when you can make better and faster by the next quarter anyways?
Seriously - this is the way to go. Release your driver source. All it can do is help move your product into more market spaces.