Re: How open is Intel?
On Thu, Oct 19, 2006 at 11:14:20AM +1000, Jonathan Gray wrote: [snip] For the longest time it was quite hard to get documentation out of the networking side of Intel, but it recent years they publish reasonably detailed manuals for 10/100 (fxp) and 10/100/1000 (em) controllers and some PHYs. I have not been able to find any 10GbE (ixgb) manuals and suspect they don't publish them. Anything at all to do with wireless there is no documentation from Intel at all also. fxp http://www.intel.com/design/network/manuals/8255x_opensdm.htm em http://www.intel.com/design/network/manuals/8254x_GBe_SDM.htm Funny you should mention this as I just grabbed some docs for the 82563EB (Intel Pro/1000). Device driver writing is an area I haven't yet explored, but the datasheet for the Pro/1000 looks pretty detailed and includes block diagrams, pin descriptions, signalling, timing specs, etc. Is this sort of document sufficient for device driver writers? I apologize if this is a stupid question, but I really would like to learn more about writing device drivers. -Damian
Re: How open is Intel?
For example, recently Intel was very boastful about demonstrating their ``ongoing commitment to providing free software drivers for Intel hardware''[1]. When I first read the announcement, I was excited, but after re-reading it, I caught on that nowhere did they mention providing documentation---just an open source driver. I emailed Keith Packard about this, but never got a reply. Keith Packard works on X, but he also works for Intel, right? No man can have two masters. But he does. You can expect that X will become more closed. It is becoming a serious problem -- many senior X developers now work for video card vendors. I also found some technical documentation on intel.com about the G965 chipset[2], but it does not appear complete. It seems to explain how to setup DMA to communicate with the card, but not what data should be sent over DMA. Of course, because of my lack of expertise in this field, I may just be looking in the wrong places. That's right -- sufficient documentation has not been made available. Another example appears to be the Intel PRO/1000 MT card. Intel has an open source driver for it, but when I search their web site the most I find are product briefs and white papers[3]. (I know the link is for their PRO/1000 XF card, but that is the page I was directed to when I clicked on ``Technical Documents'' from the PRO/1000 GT page.) Intel, Broadcom, and Marvell are the only three vendors still left who fail to publish documentation for their ethernet chips. (OK, there are a few others, but they are mostly for very rare new products, and people like jsg will soon win them over). These vendors do help with fixing the drivers in some limited scope. And that's the problem. They only help a little. If they wrote complete bug-free drivers and promised to maintain them for us forever it would be one story, but that is not what is going on. On the other hand, there appears to perhaps be sufficient technical documentation on their I/O Controller Hubs for OpenBSD to support them soon after introduction... or maybe they are just easy to reverse engineer? Whatever division makes the host bridges does a fairly good job of releasing information. Of course there are two documents for these. One is the primary programming document, which they make available. The other is an extended document for BIOS writers, and this is never made available. Still, the primary document is largely good enough for our needs. This is the only division of Intel that is open. So how open is Intel? Which chipsets do they provide sufficient documentation to fully support? Which chipsets do they provide some documentation, but omit important parts (and what are these parts)? And which chipsets are they completely unproviding for? Intel only really provides the pci host bridge documentation. Everything else is closed. Intel hopes that if it keeps telling saying we are open that the Linux people will keep believing them. Let's prove them wrong.
Re: How open is Intel?
On Wed, Oct 18, 2006 at 01:31:58PM -0600, Theo de Raadt wrote: Another example appears to be the Intel PRO/1000 MT card. Intel has an open source driver for it, but when I search their web site the most I find are product briefs and white papers[3]. (I know the link is for their PRO/1000 XF card, but that is the page I was directed to when I clicked on ``Technical Documents'' from the PRO/1000 GT page.) Intel, Broadcom, and Marvell are the only three vendors still left who fail to publish documentation for their ethernet chips. (OK, there are a few others, but they are mostly for very rare new products, and people like jsg will soon win them over). These vendors do help with fixing the drivers in some limited scope. And that's the problem. They only help a little. If they wrote complete bug-free drivers and promised to maintain them for us forever it would be one story, but that is not what is going on. For the longest time it was quite hard to get documentation out of the networking side of Intel, but it recent years they publish reasonably detailed manuals for 10/100 (fxp) and 10/100/1000 (em) controllers and some PHYs. I have not been able to find any 10GbE (ixgb) manuals and suspect they don't publish them. Anything at all to do with wireless there is no documentation from Intel at all also. fxp http://www.intel.com/design/network/manuals/8255x_opensdm.htm em http://www.intel.com/design/network/manuals/8254x_GBe_SDM.htm
How open is Intel?
Lately, I have been in several discussions regarding Intel's stance towards the open source community, and the topic of providing hardware documentation frequently arises. However, since I am not much of a kernel hacker, I do not have a good perspective on what documentation is necessary. For example, recently Intel was very boastful about demonstrating their ``ongoing commitment to providing free software drivers for Intel hardware''[1]. When I first read the announcement, I was excited, but after re-reading it, I caught on that nowhere did they mention providing documentation---just an open source driver. I emailed Keith Packard about this, but never got a reply. I also found some technical documentation on intel.com about the G965 chipset[2], but it does not appear complete. It seems to explain how to setup DMA to communicate with the card, but not what data should be sent over DMA. Of course, because of my lack of expertise in this field, I may just be looking in the wrong places. Another example appears to be the Intel PRO/1000 MT card. Intel has an open source driver for it, but when I search their web site the most I find are product briefs and white papers[3]. (I know the link is for their PRO/1000 XF card, but that is the page I was directed to when I clicked on ``Technical Documents'' from the PRO/1000 GT page.) On the other hand, there appears to perhaps be sufficient technical documentation on their I/O Controller Hubs for OpenBSD to support them soon after introduction... or maybe they are just easy to reverse engineer? So how open is Intel? Which chipsets do they provide sufficient documentation to fully support? Which chipsets do they provide some documentation, but omit important parts (and what are these parts)? And which chipsets are they completely unproviding for? Thanks. [1] http://lists.freedesktop.org/archives/xorg/2006-August/017404.html [2] http://www.intel.com/design/chipsets/datashts/313053.htm [3] http://www.intel.com/network/connectivity/products/pro1000xf_server_adapter_docs.htm