coreboot:
I am researching parts to build a new open-source desktop system, and came across coreboot tonight.
I have heard of open-source projects to implement x86 BIOS, but have always wondered how they fared given the fact that most motherboard vendors and chip vendors consider their products confidential intellectual property and won't provide technical documentation necessary for software development without an contract (NDA, etc.).
Are there any modern x86 motherboards and/or systems currently available for which technical documents are available for the motherboard and everything on it?
Are matters better or worse for alternate architectures?
David
Hello David,
On Thu, Jun 19, 2008 at 09:58:46PM -0700, David Christensen wrote:
Are there any modern x86 motherboards and/or systems currently available for which technical documents are available for the motherboard and everything on it?
My favorite is the GIGABYTE GA-M57SLI-S4 with AM2 socket. It is supported in coreboot and it's also possible to put an extra flash chip on the board to be able to experiment with coreboot without fear of bricking the board.
My company sells such modified boards, but unfortunately I am not able to sell directly to consumers in Denmark (but businesses is OK) because of EU environmental regulations. :\ I don't have resources to register in every member state's producer registry.
//Peter
David Christensen wrote:
coreboot:
I am researching parts to build a new open-source desktop system, and came across coreboot tonight.
I have heard of open-source projects to implement x86 BIOS, but have always wondered how they fared given the fact that most motherboard vendors and chip vendors consider their products confidential intellectual property and won't provide technical documentation necessary for software development without an contract (NDA, etc.).
Just to be clear, NDA is short for Non-Disclosure Agreement. There is no standard NDA; even the same company will have a different NDA for a different purpose. An NDA will often list exactly what will be shared and protected, but often companies will want this list to be very general so that almost anything shared that was not previously shared by legal means will be protected by the terms of the NDA.
Some companies will provide enough information about their boards, processors, chipsets, ancillary chips and embedded controllers with or without an NDA. With an NDA in place, they will often want to review code based on an open source project (i.e. coreboot), before allowing it to be publicly released. There may be a few companies that are resistant to any open source BIOS and may not agree to an NDA for that purpose, but I know of no such case yet. Companies will tend to do what is best for their bottom line; we just need to convince them that an Open BIOS/firmware like coreboot will help them improve their bottom line.
When a company is resistant to releasing technical information even with an NDA or the prospect of getting approval to release source created via NDA protected information is doubtful, there is the option of reverse engineering the technical information via JTAG debuggers, logical analyzers and similar tools. Of course this is only an option for those that do not sign any relevant NDA. Also, care must be taken to ensure that the reverse engineering activities do not violate any applicable laws.
Are there any modern x86 motherboards and/or systems currently available for which technical documents are available for the motherboard and everything on it?
I'm not aware of any x86 main boards with complete technical information that are available without signing an NDA. Some that may come close would be on the coreboot main board list, but some of these may have been developed under NDA, which means the only public technical information available may be the approved & released chipset-specific, coreboot source code itself:
http://www.coreboot.org/Supported_Motherboards
Perhaps, someone else is aware of such a board with complete publicly available technical information, including full schematics and BOM?
Are matters better or worse for alternate architectures?
The situation for non-x86 processors is much better. U-Boot seems to support almost any non-x86 based board that exists. If a board is not supported, its architecture often is supported and thus a port U-Boot to it is usually quite easy to do.
In my opinion, U-Boot's non-x86 firmware market share is so high that embedded board designers ignore U-Boot at the own peril. This is especially true of architectures that MS Windows CE does _not_ support. (CE supports only x86, MIPS, ARM and SuperH where ARM is the only one that is really significant; CE's bootloader Eboot is really a joke compared to the power of U-Boot in any case.)
Sincerely,
Ken Fuchs
I've seen my fair share of open-source adoption, or not. As such, seeing the recent developments with open-source drivers in the Intel camp, I can say they are pretty happy with the result, everyone is.
Has it already been attempted to contact chipset manufacturers to release information without NDA, much like what AMD has already done with graphics cards? I say this because, if they realize that by allowing open-source replacements for the BIOS would allow for new industry players to have a lower cost of entry to the motherboard manufacturing. This, I see, would drive chipset sales up, which is good for them IMHO. Emerging markets like Chine, which will start doing it anyway, would benefit, like the manufacturer would also. This is something I think Coreboot should be attempting to "lobby", so NDAs could become a thing of the past.
Anyone has any idea of how much are the costs for using Pheonix or AMI's BIOS?
Best regards, Tiago Marques
On 6/20/08, Ken.Fuchs@bench.com Ken.Fuchs@bench.com wrote:
David Christensen wrote:
coreboot:
I am researching parts to build a new open-source desktop system, and came across coreboot tonight.
I have heard of open-source projects to implement x86 BIOS, but have always wondered how they fared given the fact that most motherboard vendors and chip vendors consider their products confidential intellectual property and won't provide technical documentation necessary for software development without an contract (NDA, etc.).
Just to be clear, NDA is short for Non-Disclosure Agreement. There is no standard NDA; even the same company will have a different NDA for a different purpose. An NDA will often list exactly what will be shared and protected, but often companies will want this list to be very general so that almost anything shared that was not previously shared by legal means will be protected by the terms of the NDA.
Some companies will provide enough information about their boards, processors, chipsets, ancillary chips and embedded controllers with or without an NDA. With an NDA in place, they will often want to review code based on an open source project (i.e. coreboot), before allowing it to be publicly released. There may be a few companies that are resistant to any open source BIOS and may not agree to an NDA for that purpose, but I know of no such case yet. Companies will tend to do what is best for their bottom line; we just need to convince them that an Open BIOS/firmware like coreboot will help them improve their bottom line.
When a company is resistant to releasing technical information even with an NDA or the prospect of getting approval to release source created via NDA protected information is doubtful, there is the option of reverse engineering the technical information via JTAG debuggers, logical analyzers and similar tools. Of course this is only an option for those that do not sign any relevant NDA. Also, care must be taken to ensure that the reverse engineering activities do not violate any applicable laws.
Are there any modern x86 motherboards and/or systems currently available for which technical documents are available for the motherboard and everything on it?
I'm not aware of any x86 main boards with complete technical information that are available without signing an NDA. Some that may come close would be on the coreboot main board list, but some of these may have been developed under NDA, which means the only public technical information available may be the approved & released chipset-specific, coreboot source code itself:
http://www.coreboot%E2%80%8B.org/Supported_Motherboards
Perhaps, someone else is aware of such a board with complete publicly available technical information, including full schematics and BOM?
Are matters better or worse for alternate architectures?
The situation for non-x86 processors is much better. U-Boot seems to support almost any non-x86 based board that exists. If a board is not supported, its architecture often is supported and thus a port U-Boot to it is usually quite easy to do.
In my opinion, U-Boot's non-x86 firmware market share is so high that embedded board designers ignore U-Boot at the own peril. This is especially true of architectures that MS Windows CE does _not_ support. (CE supports only x86, MIPS, ARM and SuperH where ARM is the only one that is really significant; CE's bootloader Eboot is really a joke compared to the power of U-Boot in any case.)
http://www.denx.de/wi%E2%80%8Bki/UBoot
Sincerely,
Ken Fuchs
-- coreboot mailing list coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
On Mon, 2008-06-23 at 13:56 +0100, Tiago Marques wrote:
I've seen my fair share of open-source adoption, or not. As such, seeing the recent developments with open-source drivers in the Intel camp, I can say they are pretty happy with the result, everyone is.
From my experience, Intel only cares about the big OEM companies.
When they do give something to the community they usually give poorly-written sourcecode that only they can further maintain instead of proper documentation. The best example are the the ipw3945/iwlwifi drivers for their wireless adapters. http://kerneltrap.org/node/6650 http://www.openbsd.org/papers/brhard2007
Has it already been attempted to contact chipset manufacturers to release information without NDA, much like what AMD has already done with graphics cards?
Yes it was, and they always give evasive answers about Intelectual Property and external regulations that they must follow in order to assure the robustness or security of their products. Pure bull$%!#.
I say this because, if they realize that by allowing open-source replacements for the BIOS would allow for new industry players to have a lower cost of entry to the motherboard manufacturing. This, I see, would drive chipset sales up, which is good for them IMHO. Emerging markets like Chine, which will start doing it anyway, would benefit, like the manufacturer would also.
AMD and VIA are doing this, among others to reduce costs. Intel is just too big for this small starting players.
This is something I think Coreboot should be attempting to "lobby", so NDAs could become a thing of the past.
Anyone has any idea of how much are the costs for using Pheonix or AMI's BIOS?
A few dollars per unit, i guess. I think their strong point is that they offer support for them and make them work on new board models.
Cristi
On Mon, 2008-06-23 at 13:56 +0100, Tiago Marques wrote:
Anyone has any idea of how much are the costs for using Pheonix or AMI's BIOS?
Cristi Magherusan wrote:
A few dollars per unit, i guess. I think their strong point is that they offer support for them and make them work on new board models.
The royalty per unit varies widely based on unit volume. For lower volumes, the royalty per unit can be about $10 or even more per unit.
However, the biggest external cost is the source code licensing fee. A full UEFI based source code license will cost up to $50,000 via a IBV (according to public UEFI documents as I recall). An IBV in this context would include AMI, Phoenix, Insyde and General Software. (A legacy BIOS is comparable in price and usually faster as well, a sad comment on UEFI.) If your board contains an embedded controller that laptops/mobile devices often require, the $50,000 figure may not cover the embedded controller's source code, so you can expect to pay a significant percentage more to include the embedded controller source code. There may even be an additional per unit royalty for the embedded controller source code.
So now you have a rough idea of the external costs that can be saved on mainboards that are already supported by coreboot and associated payloads. BTW, OpenEC is the only open source embedded controller I'm aware of and it partially supports a least a particular version of the OLPC as of the end of 2007 when development on it ceased. So, if you need embedded controller code, your lowest cost alternative will probably still be closed source as provided by an IBV or other third party that specializes in embedded controller code.
Sincerely,
Ken Fuchs