4 ms·
Why do third-party BIOS vendors exist in the first place? Any reason why Intel, AMD and the motherboard vendors can't make their own BIOS, perhaps leveraging C
by sigjuice 9y ago
Why do third-party BIOS vendors exist in the first place? Any reason why Intel, AMD and the motherboard vendors can't make their own BIOS, perhaps leveraging CoreBoot?
- yuhong 9y agoIt dates back to the 1980s when the IBM PC BIOS has to be reverse engineered, though even Open Firmware used to have several vendors.
- jstwinkles 9y agoSome motherboard vendors do make their own. I've seen a few Intel boards sporting an EDK2 derivative. The IBVs basically exist to take the hassle out of UEFI development for the hardware vendors. It's a very convoluted spec, and integrating all of the different parts is a very daunting project that most OEMs would just rather not bother with.
- colejohnson66 9y agoMy guess: It’s cheaper and not every motherboard is the same. Some have features added by the manufacturer such as Aura RGB
- andreiw 9y agoIn many ways UEFI on x86 resulted in a loss of firmware talent across the board since all OEMs were basically doing is selling Intel reference platforms, with Intel's UEFI drivers for everything on top of a "proprietary" firmware that amounts to Intel's reference (edk2) and maybe some buggy useless customization on top (mouse-driven configuration interfaces and other nonsense).
- andreiw 9y ago99% of all UEFI implementations are derived from EDK2/UDK. "official" firmware from companies like Aptio build on top of this code. Truth is, motherboard vendors don't have the skill set to deliver firmware. You are doing what amounts to new driver development, integration testing for drivers you get from silicon vendors (who are not really software guys either), and chasing weird bugs. When you toss in third-party drivers (eg for BMC), SMM/TZ, safe boot and update...you really need to have someone to own the entire firmware lifecycle. And this is regardless of the kind of firmware - uboot, uefi, coreboot or bios, it doesn't matter. Of course I make it sound like companies like Award and AMI ship great solutions. No one does, but OEM and silicon vendor-shipped firmware is much, much worse in quality. Oh, and UEFI and the reference inplementation Tiano Core (edk2) are exactly Intel's own firmware, no more no less. It now has more of a life of its own ever since it became UEFI (from EFI), and even supports ARM platforms, but a) majority of development is still intel b) edk2 would like to be platform agnostic, but the design of some components (of edk2, not uefi spec) like PCI support is very PC-centric and this will be painful until someone rewrites these and contributes back to Tiano.
- derefr 9y ago> you really need to have someone to own the entire firmware lifecycle Which is, in my mind, why having “internal clients” for your hardware in the form of a firmware department would make so much sense to me. Especially if the firmware team had ultimate authority over hardware edge-case behaviour: instead of hardware teams being lazy and passing the buck for “sanding off the edges” to complex firmware, the firmware team could be lazy and force the hardware teams to “sand off the edges” themselves. This is what you see in (some) old-school videogame console companies, at the time when the ISA was the API: since the hardware company also developed the SDK, various BIOSes, and even games, the needs of these internal clients pushed the hardware teams into making the hardware itself “user-friendly” (i.e. obeying the Principle if Least Surprise.)
- bonzini 9y agoMost BIOSes out there are based on the Intel UDK, which in turn periodically forks from the open source edk2 firmware. There are customizations depending on the hardware, but most of it is the same.