Hardware Archaeology

One of the running themes of Free/open source software has been how easily drivers for chipsets in old (and often not-so-old) hardware can be created. Some semiconductor vendors keep a tight hold on the details of their chips, and discourage F/OSS developers strongly. The recent news that Open Sound is available as Free software under both GPLv2 and CDDL is a great step forward, and the availability of drivers for R500-family AMD video cards is also fantastic.
As a long-term manufacturer of fantastic hardware, Sun is frequently approached by groups of developers looking for documentation for the chips used in its products. These days, Sun's newest chips are open source already, and there's a good web-site for documentation for current chips. This has already resulted in great things.
More of an issue, though, are the older systems. In plenty of cases, rather than using I/O chips sold on the open market by companies like Broadcom, nVidia, and ATI, Sun's engineers have actually designed chips specifically for the work at hand. Unlike those companies which sell I/O chips for a living, and thus have a moral duty to provide complete, externally presentable documentation for their chips, Sun's engineers often had no business need to document the chip design for public consumption (or, in quite a few older cases, at all!) Even worse, in some cases the chips Sun has made use designs and ideas acquired from third parties as a 'trade secret'. In those cases, public documentation just can't be made available.
So what happens when people ask for documentation? Well, there are at least five cases:
- The product in question may be past it's end-of-life date and there's actually no team anywhere in Sun that can answer the question.
- The documentation may not exist. Writing it would require costly reverse engineering (even if people with the skills to do so are still at Sun).
- It may exist for internal use, but releasing it outside Sun would need legal review to check for 'trade secrets' belonging to others. That legal review is time consuming and costs real money. And the answer may turn out to be "can't release, can't name the company that's obstructing us".
- It may exist and it may be possible to release it. Doing that, though, is actually a non-zero cost since usually the documentation is in an old format of some kind.
- It may actually exist in an online-ready form.
The question has once again been raised (over on Jonathan's blog) of whether Sun is acting in bad faith over interface documentation for older systems. I've done a cursory check and I believe answers of "no, we can't help" fall almost exclusively in the first four classes above and mostly in the first two. But I do understand why passions are raised and scepticism is rife.
Jonathan asked me to look into this, to ensure we're pursuing an open path across all of Sun, not simply the software group. We take all input seriously, and we can't solve all problems for all parties, but we're committed to doing our best to faithfully engage with all the communities we serve, in the same spirit as the existing Open Source Ombudsman Scheme. With the support of my team and others in the community I'll try to build a new scheme that is fair and transparent. Watch this space!
Update Aug 27: The new FOSS Open Hardware Documentation wiki is now open for business.
Comments are closed for this entry.






Also, you probably kidding about ATI, Broadcom and Nvidia. Try to get documentation about Broadcom and Nvidia ethernet.
Posted by kk on June 19, 2007 at 04:43 AM PDT #
Posted by Simon Phipps on June 19, 2007 at 04:47 AM PDT #
Posted by chithanh on June 19, 2007 at 05:03 AM PDT #
Posted by Simon Phipps on June 19, 2007 at 05:13 AM PDT #
Posted by Luke on June 19, 2007 at 05:14 AM PDT #
Posted by Simon Phipps on June 19, 2007 at 05:15 AM PDT #
Posted by My Name is Nobody on June 19, 2007 at 05:33 AM PDT #
Posted by Magnus on June 19, 2007 at 06:34 AM PDT #
Posted by TemporalBeing on June 19, 2007 at 07:22 AM PDT #
TemporalBeing: My understanding of the OpenBSD position is that information under NDA is never acceptable. Certainly I will try to get as much information out as possible, including offering NDA access where that's the only option. I've already discovered that I can likely get access to Psycho, Cassini, Schizo, GEM (all out of production), Tomatillo, and Fire documentation under NDA at pretty short notice, for example.
As to the transparency you describe: Yes, that's the plan :-)
Posted by Simon Phipps on June 19, 2007 at 07:37 AM PDT #
Yes, this is not a hardware issue, but the fact that such a simple issue has not had any response, makes us think that SUN is not willing to work with the community and not being all that opensource at all.
Posted by Pedro on June 19, 2007 at 09:38 AM PDT #
The license is not a Sun issue. The OpenSolaris community is now in control of that. If you want to see it changed, petition the community, not Sun. At this point, I still haven't seen a full, legitimate reasoning as to why the BSD project can't integrate the CDDL code, header files or not, when Apple is doing so without any issues.
Posted by Shawn on June 19, 2007 at 09:42 AM PDT #
Posted by John P. Dykstra on June 19, 2007 at 11:08 AM PDT #
Posted by Simon Phipps on June 19, 2007 at 11:32 AM PDT #
While header file usage is all well and good for people who don't care about the entire codebase, OpenBSD specifically does not allow for such additions to it's codebase.
While your view may make sense to you, it does not sync with the attitudes of the BSD folk. For them it is either MIT/BSD/ISC liberal or not good enough for them. Even the four clause BSD licence is not particularly desirable anymore.
It's a line in the dirt that they refuse to cross any further, for them they've got more non-liberal code than they'd like already. I am sure there are several OpenBSD developers that would love to use DTrace, and indeed there are many FreeBSD developers who are actively working on making DTrace function with FreeBSD. The same can be said for ZFS, but even FreeBSD would not allow the filesystem in base, it will have to be a module.
It's unfortunate, but relicensing is the only means by which the code would ever be integrated into the system.
Posted by John P. Dykstra on June 19, 2007 at 12:03 PM PDT #
Posted by Daniel van Eeden on June 19, 2007 at 12:46 PM PDT #
Posted by James on June 19, 2007 at 06:03 PM PDT #
Posted by ragneyi on June 19, 2007 at 08:37 PM PDT #
Wait for it, it is an eventuality. First expect OpenCVS to be finished off, some time around release 4.3. They've done sort, pf, grep, gzip, ntp and many other bits in the past. They'll probably finish off replacing the random smaller bits first, but eventually the gcc will be the only thing left to remove.
Had Bell Labs released the ken thompson c compiler set under the MIT licence like they did some other bits of plan 9 code, kencc would probably already be in base in order to start hammering out the missing bits from it - but it's not, so the compiler is going to have to come from something else.
Posted by John P. Dykstra on June 19, 2007 at 09:15 PM PDT #
Posted by Wesley Parish on June 20, 2007 at 01:12 AM PDT #
Posted by riffraff on June 20, 2007 at 01:21 AM PDT #
Posted by Jim Thompson on June 20, 2007 at 03:42 AM PDT #
Posted by 213.23.202.22 on June 20, 2007 at 05:29 AM PDT #
Posted by Patrick Giagnocavo on June 20, 2007 at 06:15 AM PDT #
Posted by 192.18.43.225 on June 20, 2007 at 07:45 AM PDT #
Considering you are constantly spamming everywhere about your unstable system everywhere OpenBSD is mentioned, pretty much anything you say is responded to with hostility or ignored, you should be used to it. Quit spamming about your system and it will be less of a problem for you, and the people who must deal with the spam.
riffraff and Wesley Parish:
As Thorsten mentioned, Tendra is pretty much dead in the water - and it was never really much better than that. It's support for hardware outside of the i386 world was never all that good. The policy of, "wait until it supports other systems better," was in place, and Trendra never has. Jim Thompson:
Considering how big a role OpenBSD plays in the non-BSD world, I doubt, "noone cares that much about OpenBSD." In fact, that the Mozilla Foundation gave them ten thousand dollars illustrates that it's mostly trolls and those who've no idea what OpenBSD does that talk smack about it.
Posted by John P. Dystra on June 20, 2007 at 08:19 AM PDT #
Shawn: don't be naive, even if a poll on opensolaris-discuss agrees that OpenSolaris should be relicensed under the BSDL and merged into OpenBSD, that won't happen. There goes your community.
Posted by Pedro on June 20, 2007 at 02:12 PM PDT #
Posted by Jim Thompson on June 20, 2007 at 07:24 PM PDT #
Posted by Jim Thompson on June 20, 2007 at 07:26 PM PDT #
As if responding with a name means anything at all, names can easily be pulled out of the air, I could have called myself Simone Taransky and you'd not know that I am actually John, you'd be none the wiser because there is no way to tell, so don't go whining about people using their IPs, it gives a lot more information than a name does.
There are actually quite a few things you don't get in other systems that come in OpenBSD, perhaps you should try to read up on the subject rather than spouting nonsense, I won't bother to educate you, since you've proven yourself to have prejudged the situation and obviously have no interest in learning about the topic you so freely discuss. Besides, this has gone quite off topic.
Posted by John P. Dykstra on June 20, 2007 at 09:10 PM PDT #
Hmm.. about the dtrace thing... I think this could be talked to the FreeBSDFoundation.org , but I honestly see no interest in SUN to ease things up.
Posted by Pedro on June 21, 2007 at 11:30 AM PDT #
Posted by pete gilman on June 22, 2007 at 08:49 PM PDT #