Embedded Firmware Solutions: Development Best Practices for the Internet of Things

  • 3h 16m
  • Jiming Sun, Marc Jones, Stefan Reinauer, Vincent Zimmer
  • Apress
  • 2015

Embedded Firmware Solutions is the perfect introduction and daily-use field guide--for the thousands of firmware designers, hardware engineers, architects, managers, and developers--to Intel’s new firmware direction (including Quark coverage), showing how to integrate Intel Architecture designs into their plans.

Featuring hands-on examples and exercises using Open Source codebases, like Coreboot and EFI Development Kit (tianocore) and Chromebook, this is the first book that combines a timely and thorough overview of firmware solutions for the rapidly evolving embedded ecosystem with in-depth coverage of requirements and optimization.

What you’ll learn

  • Understand the key differences between PC and embedded ecosystems in terms of firmware needs.
  • Thorough underpinning of Intel’s firmware solutions.
  • How to build a firmware stack for Quark.
  • How to integrate FSP with a bootloader, by studying the hands-on example of Coreboot and UEFI.
  • How to make a smart "build-it or buy-it" decision when starting a new embedded project.

Who this book is for

Firmware designers and engineers, hardware engineers, software architects, and product development managers.

About the Authors

Vincent Zimmer is a Principal Engineer in the Software and Services Group at Intel Corporation. With over 22 years experience in embedded software development and design, Vincent holds nearly 300 U.S. patents and was awarded two Intel Achievement Awards for his development of firmware architecture and security. He has a Bachelor of Science in Electrical Engineering degree from Cornell University, Ithaca, New York, and a Master of Science in Computer Science degree from the University of Washington, Seattle.

Jiming Sun is a firmware and BIOS industry veteran who started to write RTOS kernel code (pSOS) for Bell Labs in 1986. After a change in career paths from telecom to PCs, he was involved in early laptop PC evolution, and was among the first batch of firmware engineers to implement System Management Mode code for 386SL in early 1990s. After joining Intel in 1993, Jiming did early APM (Advanced Power Management) and ACPI (Advanced Configuration and Power Interface) implementation, which was passed to Microsoft to include in the Windows OS. Jiming is one of the creators of Tiano, which turned into UEFI, at Intel, and he is the major contributor of AMD’s AGESA (AMD Generic and Encapsulated Software Architecture). Besides his on-and-off ten-plus years of experience with Intel, Jiming has worked for Bell Labs, Zenith Data Systems, HP (Compaq), Insyde Software, AMD, Dell, and Apple. Jiming recently grand-fathered Intel Firmware Support Package (FSP) and was instrumental in launching the product in October of 2010; now Intel® FSP is a standard firmware solution offered by Intel’s IoT Solutions Group to support Atom and Core microprocessors. Jiming has Masters degrees in Electrical Engineering and Management of Science and Technology, and he has 19 US patents.

Marc is an accomplished firmware developer with over 18 years' experience in x86 embedded systems development. Marc has been a vital, active member of the coreboot community since 2007. As a lead firmware developer at Sage Electronic Engineering, his most recent focus has been on Intel FSP coreboot integration, Google Chromebook development, and AMD embedded APU solutions.

Marc got started with coreboot as the lead developer and coreboot project liaison at AMD. As a senior software engineer, he developed coreboot source code for the AMD Barcelona Family10 processor, AMD Geode processor, and AMD CS5536 chipset. In addition he contributed to the development of support for the AMD RS690 and SB600 chipsets along with reference mainboards. Prior to coreboot, Marc was one of the primary architects of the AMD GeodeROM BIOS, the basis of most Geode systems. He has also developed firmware and BIOS for Cyrix and National Semiconductor.

Marc has been a proponent of open source development for years and has written papers and blog posts that spotlight its merits. He has presented coreboot at the Southern California Linux Expo (SCaLE) 2013, 2012, 2010, the Free Software Foundation (FSF) Libre Planet 2009, the 2008 High Performance Computer Science Week Conference, and the 2007 Ottawa Linux Symposium. For the past five years, Marc has been the coreboot administrator and a mentor for Google Summer of Code, which provides students summer internships with open source software projects.

Stefan Reinauer is a Staff Engineer in the ChromeOS Group at Google Inc. He has been working on Open Source firmware solutions ever since he started the OpenBIOS project in 1997.

He joined the LinuxBIOS project in 1999 and worked on the first x64 port for LinuxBIOS back in 2003. In 2005 Stefan founded coresystems GmbH, the first company to ever provide commercial support and development around the coreboot project, working on ports to new chipsets and mainboards. In 2008 Stefan took over maintainership of the LinuxBIOS project and renamed it to coreboot. He was the original implementer of the project's ACPI and SMM implementations.

Since 2010 Stefan is leading the coreboot efforts at Google and contributed significantly to what is the largest coreboot deployment in the history of the project.

In this Book

  • Introduction
  • Firmware Stacks for Embedded Systems
  • Intel® Firmware Support Package (Intel® FSP)
  • Building coreboot with Intel FSP
  • Chrome Book Firmware Internals
  • Intel FSP and UEFI Integration
  • Building Firmware for Quark Processors
  • Putting it All Together