Here is the full text of the email, also sent to the Mesa3D development community.<p>---------- Forwarded message ----------
From: Andy Ritger <aritger@nvidia.com>
Date: Mon, Sep 23, 2013 at 11:44 PM
Subject: [Nouveau] offer to help, DCB
To: nouveau@lists.freedesktop.org<p>Hi Nouveau developers,<p>NVIDIA is releasing public documentation on certain aspects of our GPUs,
with the intent to address areas that impact the out-of-the-box usability
of NVIDIA GPUs with Nouveau. We intend to provide more documentation
over time, and guidance in additional areas as we are able.<p>As a first step towards that, we've posted a document here:<p><pre><code> ftp://download.nvidia.com/open-gpu-doc/DCB/1/DCB-4.0-Specification.html
</code></pre>
that documents the Device Control Block ("DCB") layout in the VBIOS.
The DCB describes board topology and the board's display connectors.<p>I suspect much of the information in that document is not news for
the Nouveau community, but hopefully it will be helpful to confirm your
understanding or flesh out the implementation of a few unhandled cases.<p>A few of us who work on NVIDIA's proprietary Linux GPU driver will pay
attention to nouveau@lists.freedesktop.org and try to chime in when
we can.<p>If there are specific areas of documentation that would most help you, that
feedback would help NVIDIA prioritize our documentation efforts.<p>If you have specific questions for NVIDIA, you can ask here, or direct
them to: open-gpu-doc@nvidia.com. I can't promise we'll be able to answer
everything, but we'll provide best-effort in areas where we are able.<p>Thanks,
- Andy Ritger
One thing I guess I don't understand is why Nvidia's own drivers are closed source to begin with. What do they gain by it? Is it that open source drivers would make their hardware easier to reverse engineer? Is it that the drivers themselves are an important piece of IP, and competitors would learn all these cool tricks they use in their drivers? Neither of those fit my model of the role and value of drivers. It seems like they'd just want to maximize the usefulness of the hardware they sell. But I'm obviously missing something.<p>Edit: Thanks for the responses. That's quite a variety answers.
Linus' response:<p><pre><code> We'll see. I'm cautiously optimistic that this is a real
shift in how Nvidia perceives Linux. The actual docs
released so far are fairly limited, and in themselves they
wouldn't be a big thing, but if Nvidia really does follow
up and start opening up more, that would certainly be great.</code></pre>
As someone who wasn't aware of the issue with Optimus nVidia cards before I purchased my laptop, this is fantastic news. I get support thanks to the wonderful work of the bumblebee team but it's never really felt "solid" to me. However, this is most likely because of my inexperience with the subject.<p>I feel as though I represent a fairly decent number of people when I thank Valve for the steps being taken to make Linux better as I use it as my primary OS.
As far as the timing of this move and the announcement of SteamOS is concerned, I'm having difficulty seeing the reasoning behind it. Wouldn't Nvidia just continue work on their proprietary Linux drivers, and wouldn't most gamers (who are unlikely to care about FOSS) simply use them? I imagine OEMs would include the best drivers available for the devices the choose to use, which at this point means proprietary.
This is a bit surprising. I was expecting an increased effort into their proprietary drivers due to Valve's Linux announcements, but not this.<p>Of course they could do both, but isn't Nouveau 3D performance so far behind the proprietary drivers that nobody is going to be using it for gaming anyway (at least for a long time)?<p>I guess it could be that they're just buying some goodwill from the general community in anticipation of working closer with it.
There was a thread on Reddit a while back were a few users said that Nvidia are not that great at documenting their hardware internally.<p>"Nope. One of the reasons is that NVIDIA still doesn't document anything. A friend of mine worked there, and he told me that most of the knowledge was gathered by having little gatherings with the "village elders" as they were called. Seriously. He even leaked a humorous internal video to me called "Zero Documentation" in the style of Zero Punctuation."<p><a href="http://www.reddit.com/r/Games/comments/1anev9/a_nice_little_writeup_on_why_xbox_emulation_is/c8z24z1" rel="nofollow">http://www.reddit.com/r/Games/comments/1anev9/a_nice_little_...</a>
IMO there's one primary reason Nvidia does not release open source drivers, and never will, despite whatever they say now.
It has nothing to do with lawyers, or protecting hardware secrets - that's all just smokescreen to obscure the real reason.<p>If open source drivers were available, it would be possible to port the low level code to any operating system environment anyone wanted to. And that means <i>future</i>, <i>experimental</i> operating systems and GUIs too.
Effectively this would enable OS/GUI innovation, allowing radical new 3D graphics based UIs, escaping the Microsoft Windows, Linux and Apple trap.<p>Considering the dismal state of UIs now (Windows 8, cough, say no more) you can imagine what the appearance of a well designed, sensible and user-enabling OS/GUI in the next few years would do to Microsoft.<p>Open source 3D drivers would definitely result in a quite rapid overturn of the present OS monopoly-by-three applecart. So the powers that be in the personal computer market are going to allow it ... over their dead bodies.<p>Incidentally, 3Dfx did make the full source code for their Glide drivers available (for money.) I worked at a company that bought the 3Dfx drivers, and I personally ported the drivers (which were Windows & Linux targeted) to a minimal MIPS processor based platform intended for gambling machines. It worked - passed all the test code. Then the company went through a 'local CEO was ripping off the company, sack him and kill all his projects' spasm, and the machine never got to market. Soon after that 3Dfx was deep sixed and their patents sucked into the Nvidia pool.<p>Personally I've always suspected those events may have had something to do with certain parties making sure an open source 3D engine never happened - precisely because it would be a threat to the OS status quo.
Here's the relevant part of the video that the picture is from:<p><a href="http://www.youtube.com/watch?v=MShbP3OpASA&t=2980" rel="nofollow">http://www.youtube.com/watch?v=MShbP3OpASA&t=2980</a>
Direct link to thread on lists.freedesktop.org:<p><a href="http://lists.freedesktop.org/archives/nouveau/2013-September/014480.html" rel="nofollow">http://lists.freedesktop.org/archives/nouveau/2013-September...</a>
This happens every two years.<p>Nvidia: we will help the open source community!<p>> delivers binary blob<p>nvidia: we will help the open source community with a better integrated driver<p>> delivers deb and rpm that inject binary blob in kernel<p>... what they are launching today is information that Noveau would get anyway after a couple weeks with the new cards. All this will do is get you the same crappy support you would get, two weeks in advance.