This blog is co-authored by Odin Shen, Arm, Bryant Lee & Ken Zhang, Insyde Software.
If you are a platform firmware engineer, BMC developer, or system integration tester, you may have faced one or more of the following challenges:
This Learning Path is designed for you.
With Arm’s Fixed Virtual Platform (FVP), you can simulate the full OpenBMC + UEFI boot process and implement your own custom IPMI handler before the silicon ready.
In today’s servers, the Baseboard Management Controller (BMC) is more than a boot-time helper. It is the control hub for the entire platform.
OpenBMC is an open-source project led by the Linux Foundation. It provides a modular, Yocto-based BMC firmware platform.
It supports standard management protocols such as IPMI, Redfish, PLDM, and MCTP. It is also highly customizable.
With OpenBMC, you can:
To learn more about the role of OpenBMC in shaping industry-wide server manageability standards, read this article Samer El-Haj-Mahmoud and Insyde Tim Lewis at Arm. It explains how Arm CSS and OpenBMC enable scalable, standardized BMC integration across the ecosystem.
CSS-V3 is Arm’s Reference Compute Subsystem. It provides reusable boot firmware and SoC IP building blocks. For software developers, CSS-V3 offers:
This learning path solves a common problem:
How do you validate coordination between BMC and UEFI firmware before you even have hardware?
We use a fully virtualized approach. An approach simulating boot flow, serial communication, MCTP/IPMI bridging, and OpenBMC-side control. All of this is executable on a developer workstation.
On a standard Ubuntu 22.04 workstation, you can:
The following animation shows a time-lapsed view of the entire simulation process:
This simulation path is not just for early development. It is also a foundation for CI/CD automation and long-term platform bring-up workflows.
The virtual BMC runs the full OpenBMC userspace. It allows you to start real BMC services like Redfish or Web UI servers, and interact with them through standard interfaces during simulation. This enables you to prototype, test, and even automate BMC features without using hardware.
Conclusion: Developer-driven firmware validation
This Learning Path removes hardware wait time and empowers developers to lead platform validation and prototyping. You can:
View the full tutorial: OpenBMC + UEFI Pre-Silicon Simulation