A Hardware enthusiast view on the usefulness of open source Firmwares like Coreboot

zir_blazer

Active Member
Dec 5, 2016
277
89
28
A Hardware enthusiast view on the usefulness of open source Firmwares like Coreboot

I took my time to write the linked Wall of Text® with the purpose of educating/influencing Hardware enthusiasts communities about the need to push for open source Firmwares, and perhaps with even more luck, Motherboards with open Hardware designs. These are my personal thoughts and nearly all the input I have on this matter. If you read it, you will know almost as much as I do about it.

You will notice that there is a major difference regarding my approach and nearly everyone else that you have read talking about this matter previously. I'm not of the "INTEL ME/AMD PSP VIOLATES MY PRIVACY!1!1!1" and "THE NSA AND USA GOVERMENT ARE SPYING ON ME!" crowd. I have an actual agenda regarding functional issues where I think that an open source Firmware could kick propietary Firmware butt, and I cover it with enough detail as to drive that point.
 

i386

Well-Known Member
Mar 18, 2016
2,459
675
113
31
Germany
I think the bios/uefi in my systems at home are overloaded with options and I'm working with that kind of stuff almost daily.
I don't want to think about people who would have to test and support the configurations...
 

zir_blazer

Active Member
Dec 5, 2016
277
89
28
This Thread makes me think it is a good moment to bump this one.

Just image if Supermicro decided to drop the ball on X9 series users and tell them "you're on your own". More water for this windmill then, heh.
 
  • Like
Reactions: ullbeking and lte

zir_blazer

Active Member
Dec 5, 2016
277
89
28
Almost two weeks ago FOSDEM 2021 hosted a virtual conference room for Firmware-related talks. The one that I was most interesed in was "Open Source Firmware status on AMD platforms 2021", covering the topics mentioned here. There are PDF slides and video available. Phoronix also did an article about the subject.


Talk highlights:
- AMD AGESA v9 can be currently directly integrated with TianoCore (edk2) to produce a mostly open source UEFI implementation, albeit the AGESA part remains closed sourced. Implementing it this way is unrelated to Coreboot.
- AMD hired a few Coreboot engineers that are implementing support for Cezanne and Majolica (I don't know what this one is, maybe a Dali successor?) upstream. Probably for Chromebooks.
- He mentioned the previous talk from Coreboot founder Ronald Minnich (Now currently at Google) about pure open source support of EPYC Rome in oreboot (The talk "pure open source on an AMD Zen" from this video). The problem is that while he managed to boot a Rome with no binary blobs, it only has pretty much CPU, RAM, and low speed interfaces like Serial Port for console. The PCIe Root Complex and anything that depends on it aren't available yet, so it is far from production ready because a lot of major features still aren't supported, albeit it is still amazing that it can boot Linux on its current state.
- AMD also did some work on OpenBMC to support their reference EPYC platform. In a previous conference there was a talk by an AMD engineer about this.
- 3mdeb worked on an AGESA v9 + TianoCore port for the DFI GH960 (Ryzen Embedded V1000) in a DFI COM332-B COM Express Type 6 Carrierboard, which they plan to upstream on a few months and may be the first non-Chromebook Zen platform to get an open source Firmware (Albeit it is not Coreboot).
- They also mentioned their side project Dasharo (There is a Twitter where they mentioned my guide, heh), that is as of yet a bit hard to describe, but I interpret it as if they want to provide IBV (Independent BIOS Vendor)-level Firmware services based on Coreboot for continuous mainteinance and build testing of Motherboards using it.


@Patrick
Since you are considered a sort of seer in the industry, what is your point of view about this? I find highly surprising that some cloud providers are actually deploying Coreboot but the rest of the industry (Mainly everything consumer facing) does not care at all.

I got tired of planned obsolecense, where a perfectly fine, high quality Motherboard suddently becomes far less interesing due to not supporting new features that are Software-only and could be implemented via Firmware updates, but no Motherboard vendor would do that because their business is selling more Motherboards, not proper mainteinance of existing ones. So I want to push the idea of open source Firmware, to remove control of that from the Motherboard vendors.
 

ullbeking

Active Member
Jul 28, 2017
499
59
28
42
London
I'm highly interested and involved in coreboot and Libreboot, as well as OpenBMC. I've got a lot of hardware that runs coreboot and am very keen to share notes with anybody else who is interested. Presently I'm unbricking the BMC on my Talos II (as well as building a few NAS'es), but I have several X9SCM-F's that I will be corebooting, plus building NAS from an X11SSH-CTF in a few months.

My ideal would be to port coreboot and OpenBMC to the A1SRi-2758F and X10SDV and X11SDV series boards. These are currently my favorite home servers.

Edit: In fact, I have quite a few Lenovo X200, X220, and X230 (plus T-versions, etc) that I have Librebooted or corebooted. In my workflow, I use these laptops as, more of less, thin clients to powerful servers where the real work is done.
 
  • Like
Reactions: abq and ericloewe

ullbeking

Active Member
Jul 28, 2017
499
59
28
42
London
This Thread makes me think it is a good moment to bump this one.

Just image if Supermicro decided to drop the ball on X9 series users and tell them "you're on your own". More water for this windmill then, heh.
Often, coreboot is actually better than the stock BIOS.

Remember, though!! Make an image of the stock BIOS and update the EC (if appropriate) while still on stock firmware before flashing coreboot.
 

zir_blazer

Active Member
Dec 5, 2016
277
89
28
Presently I'm unbricking the BMC on my Talos II
If you have a Talos II, you would surely be interesed in reading this.



Often, coreboot is actually better than the stock BIOS.
Can you give more concrete examples of things where Coreboot is significantly better? I have a lack of first-hand experience.

I know that it can theorically do everything than the stock BIOS does better than it, but in most cases, the Ports are incomplete in some way or another because it involves heavy reverse engineering to implement every Motherboard feature. So is pretty much a win/lose situation, where Coreboot may do several things better than stock (Because it either implements features the stock BIOS doesn't has, fix bugs, does it faster, etc), but may miss propietary features that are hard to reverse engineer and include.
 

Patrick

Administrator
Staff member
Dec 21, 2010
12,113
5,134
113
@zir_blazer so here is my unpopular take, and it applies to Coreboot, but also the Talos II platform.

I wanted IBM Power 9, so I just bought IBM LC621's. They do not have all of the open features of the Talos II, but you power it on, and it works.

The same sort of behavior is happening with OpenBMC/ Coreboot more broadly. The hyper-scale community has teams of engineers to work on this, but most other organizations do not. If you have 20 servers, but you need 1/4 of a person-year to get everything set up, that is a cost of say $1000/ server and then the question is how much extra value did you get.

I know that is a strange way to think about it, but until OEMs start supporting it as a primary platform, outside of enthusiasts/ hyper-scale it is very hard to get adoption.

Back to the Power9, I have heard many stories of the Talos II. I 100% was planning on getting one. Then I basically got offered IBM branded systems for less than the Talos II and the question was lower hardware cost, lower setup costs, versus something cool to tinker with.

We have plenty to tinker with. I have not shared this publicly before, but we are going to do a Cooper Lake series before Milan/ Ice launches. Very expensive to do, but very interesting.
 
  • Like
Reactions: zir_blazer

zir_blazer

Active Member
Dec 5, 2016
277
89
28
I know that is a strange way to think about it, but until OEMs start supporting it as a primary platform, outside of enthusiasts/ hyper-scale it is very hard to get adoption.
I agree with this. Without the direct help of an OEM providing open documentation like schematics for GPIO and such, you simply drop the ball on the Coreboot developers that have to reverse engineer everything with no vendor help. It is even more time and effort to do so. I think than open source Firmware will also be dependent on a from-scratch Motherboard design that trying to make an existing ASUS/Gigabyte/whatever Motherboard look good.

But this is also a chicken-and-egg scenario. If there is no demand, then no OEM will do it, with the problem being that most people either don't know or don't care so there isn't even a sleeping demand for such product. And that is what I want to change, that people at least gets interesed in such option.
 

Patrick

Administrator
Staff member
Dec 21, 2010
12,113
5,134
113
The same thing happens with the BMC chips themselves. I sometimes ask vendors "why do you use Aspeed over another vendor" and the most common answer is "it works and it is priced competitively." Until either side of that equation changes, everything will continue on as-is.