<br><br><div class="gmail_quote">On Wed, Aug 26, 2009 at 11:20 PM, Dave Ball <span dir="ltr">&lt;<a href="mailto:openmoko@underhand.org">openmoko@underhand.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Ack. Binary is evil</blockquote></div><br>I agree - binary drivers are a evil (but still better than nothing for the average end-user who never sees a line of source code). <br><br>Binary drivers are a hinderence to the rest of the system. If one wants to utilize the functionality provided by a given driver, one is often pinned to an already outdated ABI, kernel, etc, halting updates from the continuously evolving open-source codebase. I can&#39;t remember all of the &#39;elements of open source software freedoms&#39; as per the definition, but I&#39;m sure that takes away at least one of them. <br>
<br>On the positive side though, TI (Qualcomm?, Samsung?) has still been doing a great job pushing Linux on their devices, especially if you consider how open (most) of their documentation is, and they have integrated 3D silicon into their chips (most of the newer SoCs do). Even the Glamo people were kind enough to open up slightly, even if their hardware had some shortcomings. I&#39;m confident that the big players will open up too, at some point in the future, either by assisting the community in providing some OSS driver code, or at least facilitating someone from the community to write the driver for them. <br>
<br>All it really takes for a decent open-source 3D driver, is for one (hopefully independent and well-skilled in FLOSS) graphics engineer to sign an NDA, agreeing not to redistribute the documentation, even via code comments, sign another agreement stating that they have not seen or been given any proprietary source code, and then spend a good chunk of time actually writing the driver. That&#39;s entirely publishable in the open-source world, and I really hope that Imagination (PowerVR) and other such graphics companies start making that common practise. The key to that is having decent documentation, of course. Companies probably avoid this practise because they&#39;re afraid of exposing their &#39;intellectual property&#39; and / or silicon design by exposing their API (not just the ABI). <br>
<br><b>NewsFlash</b> (for fearful companies): There&#39;s a standardized API for OpenGL, meaning that (almost) anyone with an EE degree can make (almost) the same graphics silicon as you have,  and a decent EE can even hide most of the proprietary technology in hardware. <br>
<br>On the topic of (non-)proprietary hardware, things of this nature really do give me a lot of appreciation for the <a href="http://en.wikipedia.org/wiki/Open_Graphics_Project">Open Graphics Project</a>, <a href="http://www.opencores.org/project,oc-h264-encoder">OC - H264</a>, and <a href="http://www.opencores.org">OpenCores.Org</a> in general ... and GTA02-Core for that matter !<br>
<br>C<br>