Designing Firmware for an Open World

Firmware at hand intro cover

The adoption of open source has had a significant impact on software development over the past few decades. As those principles influence overall platform design, Intel continues to expand the use of open source in platform firmware development. Events like the Open Source Firmware Conference (OSFC) allow Intel to engage with the community on a broad set of platform solutions.

Since 2004, Intel has supported the TianoCore community as an open source implementation of the Unified Extensible Firmware Interface (UEFI) and UEFI Platform Initialization (PI) standards. UEFI is broadly adopted as an evolution of the PC legacy Basic Input/Output System (BIOS). TianoCore components are incorporated in commercial and open source firmware solutions, booting billions of devices worldwide.

Play the TianoCore video.

Tiano Core

The primary project under TianoCore is the second generation EFI Development Kit (EDK II), but the community also supports development tools and test frameworks. The MicroPython Test Framework for UEFI was recently contributed to TianoCore, providing a Python* port optimized for constrained environments. Python scripts for UEFI are also utilized by CHIPSEC, a framework for analyzing the security of PC platforms including hardware, system firmware (BIOS/UEFI), and platform components.

OSFC 2018 will feature the first public TianoCore hackathon, encouraging broader community participation with hands-on testing of the Signed UEFI Capsule Update implementation in EDK II.

TianoCore was initially started to establish consistent protocols and interfaces between UEFI solutions but has expanded to include full platform solutions. A number of firmware projects are available for Intel® reference platforms and off-the-shelf hardware. This includes the Open Compute Project (OCP) Project Olympus, MinnowBoard open hardware, and platforms based on the Intel® Atom® Processor E3900 Series.

Intel is also opening other aspects of firmware, introducing the Sound Open Firmware (SOF) project in March 2018. This provides fully-customizable open source firmware for all Intel hardware platforms, providing full code transparency for debugging and development. SOF firmware and drivers are platform-agnostic, simplifying porting and integration with other hardware platforms and DSP architectures.

Intel’s ability to deliver broad-market solutions means our customers use a variety of firmware solutions, based on their platform requirements. While most off-the-shelf platforms ship use UEFI to maximize compatibility, specialized platforms may launch their software payload with coreboot*, LinuxBoot*, or a custom bootloader for tighter integration. No matter the solution, Intel customers expect their silicon to be properly initialized and behave consistently across solutions.

To provide this consistency, developers can integrate Intel® Firmware Support Package (Intel® FSP) into their bootloader to initialize Intel silicon. This royalty-free solution handles the processor, memory controller, and Intel® chipset initialization functions not currently available in open source. Intel FSP uses a simplified licensing agreement, allowing redistribution as part of an open source project or commercial solution.

Intel FSP is a key component of Intel® Slim Bootloader, a new scalable firmware solution for Internet of Things (IoT) devices. Slim Bootloader which bring simplicity is ideal for integrated industrial IoT solutions and real-time operating systems (RTOS) with minimal firmware requirements. Slim Bootloader provides a codebase optimized for fast boot while leveraging EDK II libraries.

Open Source Firmware Conference 2018

Intel is proud to be a part of the first OSFC. This event encourages collaboration between developers of different firmware solutions like coreboot, LinuxBoot, u-boot* and TianoCore. By engaging with industry partners and open source developers, Intel can continue to provide innovative firmware solutions that provide the most flexibility to our customers.  

Michael Greene - VP & General Manager, Intel System Technologies and OptimizationMichael Greene is VP & General Manager, Intel System Technologies and Optimization Division. He leads a worldwide organization responsible for a broad range of development, enabling, and architecture analysis efforts to accelerate development velocity and time to market for Intel platforms. He joined Intel in 1990, after graduating from the Massachusetts Institute of Technology, and managing several new product developments, research efforts, and engineering groups. Michael has served as Intel’s initiative owner for power efficiency, pre silicon software development, and has driven new technology benchmarking throughout his career. Follow Michael on Twitter.

For more complete information about compiler optimizations, see our Optimization Notice.