Open nVidia Linux Driver Pledge Nearly Complete 221
Ciarán Mooney writes to let us know that the Pledgebank drive to raise $10,000 for Project Nouvaeu is almost complete — at this moment it needs only 196 more people to sign up. Project Nouveau aims to provide open source 3D acceleration for nVidia cards. The drive was started by David Nielsen, whose blog explains what he hopes will happen.
Excuse me. (Score:2, Interesting)
This sounds, for lack of a better phrase, retarded to me.
Re:Excuse me. (Score:2, Interesting)
Re:What is wrong with the proprietary driver? (Score:4, Interesting)
Open Graphics Project (Score:4, Interesting)
http://wiki.duskglow.com/tiki-index.php?page=OGPN
The Open Graphics Project is making steady progress.
Re:What is wrong with the proprietary driver? (Score:5, Interesting)
I switched to a FireGL 8700 (R200-based) for this reason (and it was an upgrade from a GeForce FX 5200). With regards to ATI cards, there are usable and stable open source drivers for all R300-based and lower video cards. Additionally, ATI no longer supports R100-based or lower video cards on Linux. Fortunately, the open source drivers are available to pick up the slack.
Re:Excuse me. (Score:3, Interesting)
Re:Great... (Score:2, Interesting)
Re:This is a worthy cause (Score:4, Interesting)
I can't see how, unless someone's somehow managed to obtain patents that don't disclose information publicly and, as such, would suffer material harm in disclosing the patented ideas publicly by releasing source code.
In other words, any vendor that tells you that is lying.
Re:Excuse me. (Score:3, Interesting)
Yes, Nvidia has NDAs which would be violated if they turned around tomorrow and released a GPL driver. However, those NDAs were negotiated by Nvidia and it would be trivial for them to be renegotiated. I very much doubt the people who developed the components care either way - as illustrated by how quickly intel was able to open-source their driver.
I think the "We'd be breaking our supplier agreements" line is nothing more than a red-herring.
Re:Excuse me. (Score:5, Interesting)
Re:Plenty is wrong with the proprietary driver (Score:3, Interesting)
More appropriate would be to say "or else use a kernel you don't want to." It's just as much of a nightmare being forced to upgrade your kernel as well. Gaming is very sensitive to kernel version (just read the Cedega release notes re: versions 2.6.9 and 2.6.10). Upgrading from 2.6.15 to 2.6.16 caused some Cedega-supported games to stop working.
My major issue with the binary driver is security. Because the driver is a kernel module, remote exploits of the NVIDIA driver will hack the kernel every time. Online gaming brings new life to the idea of remotely exploiting the NVIDIA driver, and not having an auditable driver is a big issue. It took them over 2 years to fix [slashdot.org] a reported, remotely exploitable issue. It's unacceptable to be forced to use such crap. The only other alternative is to use some other [ati.com] crap [microsoft.com] which suffers from exactly the same problems. I wish something would shake up the 3D market, but somehow I doubt this project is going to unseat NVIDIA. :(
mandelbr0tI'll bet you DRM is behind the driver secrecy. (Score:5, Interesting)
Sure, there may be some secret sauce in there that makes for shinier 3-D graphics at a higher frame rate. But I suspect that shiny graphics aren't on the top of the list of things they're protecting. It's DRM. Macrovision's built into every video card that has a TV output port (so you can't use a VCR and tape a DVD movie.) Soon, HDCP will be built into every new graphics card so you can watch HD-DVD and Blu-Ray movies without being able to exercise Fair Use legally. And very likely, all you have to do to turn off Macrovision and completely piss off the MPAA is flip a single bit in a particular register. And it's likely that if hardware programming information was known about newer cards, cracking HDCP would be trivial.
That's why we're stuck with proprietary drivers.
What's In It For Me? (Score:3, Interesting)
Or is it just a way to get higher FPS on 3D games running on nVidia HW?
Exactly (Score:4, Interesting)
Outsiders scoffed at the insurmountable task they were undertaking, saying it was a waste of time given Sun's implementation.
Now, with nothing to lose, Sun is on the verge of releasing Java under the same license that classpath uses!
Re:Huh? (Score:1, Interesting)
I'd rather give someone money in appreciation of what they have done than to a manufacturer that writes a bad driver and wants to make money on it.
Re:This is a worthy cause (Score:3, Interesting)
That's not entirely accurate, and not a fair comparison. When a corporation drops support of their product in a binary-only driver, that's the end of the story. When an open-source driver 'drops' support of a product, what they're doing is failing to maintain support. Other people are free to pick up the slack. If a device was supported by open-source software at one point, getting that support up-to-date is far easier than, say, starting from scratch.
Not really. This story demonstrates that if there is sufficient demand for an open-source driver, it's quite easy to raise enough funds to hire a developer to bring an open-source driver up-to-date
Not at all. There's a big difference between an excuse and the real reasoning here. What nVidia and ATI are basically saying is that they can't give out documentation on programming the hardware
The real reason nVidia and ATI won't release any information for developers is that they see the emergence of high quality, high performance, feature rich, open-source drivers as a threat to their profits. If, for example, Intel can leverage the Xorg / DRI environment ( not to mention developers ), then it means their unit costs are considerably lower than if they have to screw around with writing everything themselves, and sign expensive licensing deals to make use of other people's OpenGL implementation. Intel isn't the only competitor here. Any upstart can make some hardware, hand the open-source community the documentation they need, and guess what
Yes, but that patent covers the hardware, not the interface to talk to the hardware.
Re:Change the kernel (Score:2, Interesting)
BUT, userspace drivers could allow us to kill and restart the driver when it crashes, keep the old slow ABI around so we don't have to bin the working hardware when the maker tells us to and put the driver behind a 'firewall' to prevent it seeing anything that would upset it.
I can see why they don't want to release the binary interface of the card; it's not like an ethernet card ... "put bytes here and they go on the wire" ... the "interface description" would be a complete description of how the card works and why it works that way. The "driver" and the "chipset" are two interwoven parts of the device. The choice as to which side of the AGP a particular function is executed is not fixed and depends on detailed design choices during the co-development of the driver and the chipset.
To try and put it clearly this interface is just like the interface between the different phases of GCC; the C-compiler syntax trees are the "interface" between the phases and could be described but it's not a fixed interface. The programs on the sides of the interface share code so that they know what will be sent and how it should work.
They are stuck here; they cannot release the drivers because of paper contracts; they cannot release the 'interface' because it would require an exact description of the driver to make sense of it; and violate the contract. If they release what they can they're just taking the piss.
IMO there are two choices that allow both sides to be happy
1) Usermode drivers
2) An opensource daughtercard.
A box for a usermode driver would need care. In some ways a process with a usermode driver would have to be very different (eg control of shared memory in OTHER processes, DMA access to memory). The support for restarting the driver would be very interesting.
The simple fact is that there is no hard line between 'software' and 'hardware' and if part of the 'hardware' actually runs on the host system I don't see a problem for open source. AS LONG AS the 'hardware' conforms to a published interface specification. There is IMO no difference between comforming to 'Usermode driver Version 1.1' and 'ATI I/O Port Version 12.43832' both have advantages and disadvantages but both are perfectly reasonable.
The current situation is not reasonable; the kernel interface between the driver and the rest of the kernel is like the GCC example above it's not "Interface version 1.1" it's "The driver module interface for kernel version 2.6.14-ac13" and because these graphic card are designed in part like 'winmodems' (so they can be both cheap and fast) the makers are basically screwed.
Number (2) would be an expensive little card that basically runs a lightweight version of the driver and means that everything on the host side can be open source and/or firmware blob. It in effect turns a 'winmodem' graphics card into a completely selfcontained one. (ie solve the problem by throwing moeny at it)
So where's the usermode video driver project?
Re:This is a worthy cause (Score:1, Interesting)
I'd have to agree with them. The Linux users who buy nVidia hardware are those who have nothing against buggy proprietary software. The rest of us already bought ATI or Intel hardware with working free software drivers.
(Happily playing Second Life with full 3D acceleration on my Radeon card).