Building a Firmware Component Ecosystem with the Intel Firmware Engine

Similar documents
Data center day. Non-volatile memory. Rob Crooke. August 27, Senior Vice President, General Manager Non-Volatile Memory Solutions Group

Mobile World Congress Claudine Mangano Director, Global Communications Intel Corporation

Sensors on mobile devices An overview of applications, power management and security aspects. Katrin Matthes, Rajasekaran Andiappan Intel Corporation

Hardware and Software Co-Optimization for Best Cloud Experience

Kirk Skaugen Senior Vice President General Manager, PC Client Group Intel Corporation

Thunderbolt Technology Brett Branch Thunderbolt Platform Enabling Manager

Using Wind River Simics * Virtual Platforms to Accelerate Firmware Development

Using Wind River Simics * Virtual Platforms to Accelerate Firmware Development PTAS003

Data Centre Server Efficiency Metric- A Simplified Effective Approach. Henry ML Wong Sr. Power Technologist Eco-Technology Program Office

Technology is a Journey

The Heart of A New Generation Update to Analysts. Anand Chandrasekher Senior Vice President, Intel General Manager, Ultra Mobility Group

Carsten Benthin, Sven Woop, Ingo Wald, Attila Áfra HPG 2017

NVMHCI: The Optimized Interface for Caches and SSDs

Rack Scale Architecture Platform and Management

Innovation Accelerating Mission Critical Infrastructure

JOE NARDONE. General Manager, WiMAX Solutions Division Service Provider Business Group October 23, 2006

Server Efficiency: A Simplified Data Center Approach

investor meeting SANTA CLARA Diane Bryant Senior Vice President & General Manager Data Center Group

Unlocking the Future with Intel

Enterprise Data Integrity and Increasing the Endurance of Your Solid-State Drive MEMS003

Intel. Rack Scale Design: A Deeper Perspective on Software Manageability for the Open Compute Project Community. Mohan J. Kumar Intel Fellow

Nokia Conference Call 1Q 2012 Financial Results

DisplayPort: Foundation and Innovation for Current and Future Intel Platforms

Solid-State Drives for Servers and Clients: Why, When, Where and How

NOKIA FINANCIAL RESULTS Q3 / 2012

Yuan Zhou Chendi Xue Jian Zhang 02/2017

Intel European Investor Meeting

Interconnect Bus Extensions for Energy-Efficient Platforms

The Intel IoT Platform Architecture and Product Overview

ENVISION TECHNOLOGY CONFERENCE. Functional intel (ia) BLA PARTHAS, INTEL PLATFORM ARCHITECT

An introduction to today s Modular Operating System

Introduction to the NVMe Working Group Initiative

Modernizing Meetings: Delivering Intel Unite App Authentication with RFID

Optimization of Lustre* performance using a mix of fabric cards

Nokia Conference Call Fourth Quarter 2010 and Full Year 2010 Financial Results

Risk Factors. Rev. 4/19/11

Programming Larrabee: Beyond Data Parallelism. Dr. Larry Seiler Intel Corporation

Nokia Conference Call First Quarter 2010 Financial Results

Performance Monitoring on Intel Core i7 Processors*

2nd Quarter 2017 Earnings Results

Clear CMOS after Hardware Configuration Changes

Android Innovation. Mark Skarpness Director, Systems Engineering Open Source Technology Center

Tech Data s Acquisition of Avnet Technology Solutions

Introduction to Intel Boot Loader Development Kit (Intel BLDK) Intel SSG/SSD/UEFI

Software Innovations for Cloud Scale Networking. Kelly Ahuja Senior Vice President Service Provider Business, Products & Solutions November 18, 2015

Evolving Small Cells. Udayan Mukherjee Senior Principal Engineer and Director (Wireless Infrastructure)

32nm Westmere Family of Processors

Intel European Investor Meeting

Nokia Conference Call Second Quarter 2010 Financial Results

WINNING IN A MULTICLOUD WORLD

Intel Unite Plugin Guide for VDO360 Clearwater

Cincinnati Bell Inc. March 4, 2013

M.2 Evolves to Storage Benefit

Intel & Lustre: LUG Micah Bhakti

Hitachi Announces 2018 Mid-term Management Plan

2008 Mobile World Congress. February 12, Barcelona

Intel Unite Solution Version 4.0

UEFI Security and Networking Advancements

Intel Software Guard Extensions Platform Software for Windows* OS Release Notes

2017 Q4 Earnings Conference Call

Nokia and Microsoft sign definitive agreement ahead of schedule

UBS 42 nd Annual Global Media and Communications Conference December 8, Leigh Fox, CFO

TRACKING & MARKETING CLOUD REPORTS

Fast-track Hybrid IT Transformation with Intel Data Center Blocks for Cloud

Extending SuperSpeed USB to Higher Performance Applications 10Gbps SuperSpeed USB

Intel Xeon Processor E v3 Family

Reinvention and Transformation in Personal Systems March 22,

OPPORTUNITY TO ACCELERATE MOMENTUM

The Network Will Define The Winners In The Cloud

Capturing value from an open ecosystem

ONAP VNF Developer Experience. Eric Multanen - Intel. ONAP Developer Forum June 20, 2018

Intel Unite Plugin for Logitech GROUP* and Logitech CONNECT* Devices INSTALLATION AND USER GUIDE

Intel Architecture Press Briefing

NEC to Revise Operating Segments

Intel Unite Solution Intel Unite Plugin for WebEx*

Hitachi Received Notice of Request for Arbitration

Intel Unite Solution. Plugin Guide for Protected Guest Access

Expand Your HPC Market Reach and Grow Your Sales with Intel Cluster Ready

Nokia Services Current State and Future Direction Niklas Savander

Consolidated Financial Results for the Second Quarter, Fiscal 2018

Intel QuickAssist for Windows*

Enabling a Multicloud World. Kip Compton VP, Cloud Platform & Solutions Group December 4,

Cincinnati Bell Third Quarter 2011 Results. November 3, 2011

Hitachi Announces the Conclusion of Absorption-Type Company Split Agreement Relating to Reorganization of the Healthcare Business

Drive Recovery Panel

Intel Omni-Path Fabric Switches

Extending the leading Device Market position CSFB, London, May 15th, 2008

A U G U S T 8, S A N T A C L A R A, C A

Intel Unite. Intel Unite Firewall Help Guide

Side Channel Analysis Security issue ANALYST CONSULTATION JANUARY

Re-Architecting Cloud Storage with Intel 3D XPoint Technology and Intel 3D NAND SSDs

CFO Commentary on Second Quarter 2016 Financial Results

Vodafone K.K. FY04 interim results Period ended 30 September 2004

Systems & Services Business Strategy

Conference call February 2, :00 / Helsinki 08:00 / New York 1 Nokia Q4 and FY 2016

Leveraging Adaptive Auth and Device Trust for Enhanced Security and Compliance

#Q1_2018. Orange financial results. Ramon Fernandez Deputy CEO, Chief Financial and Strategy Officer. 26 April 2018

Extending Energy Efficiency. From Silicon To The Platform. And Beyond Raj Hazra. Director, Systems Technology Lab

Hitachi Completes Transfer of Hard Disk Drive Business to Western Digital

Intel Omni-Path Fabric Manager GUI Software

Transcription:

Building a Firmware Component Ecosystem with the Intel Firmware Engine Brian Richardson Senior Technical Marketing Engineer, Intel Corporation STTS002 1

Agenda Binary Firmware Management The Binary Firmware Workflow Developing Firmware Components Summary and Next Steps

Agenda Binary Firmware Management The Binary Firmware Workflow Developing Firmware Components Summary and Next Steps

Binary Firmware Management Problem: Intel s existing firmware ecosystem doesn t address many customers in new markets (Internet of Things, China Tech Ecosystem, ) Customer doesn t have an out of the box option for Intel firmware (can t ship reference firmware as-is, cant modify reference firmware) Third party firmware solutions are overkill for simple devices Open source alternatives can be too complex How to directly enable customers without adding complexity? One solution: modular and configurable binary firmware. 4

Address Specific Firmware Challenges Perceived Firmware Complexity Quickly Build from Reference Ship it Faster, Build it Cheaper 5

Intel Firmware Engine Platform for building production firmware from binary components. Starts from reference project. Add new features from a firmware component catalog. Based on industry-standard Unified Extensible Firmware Interface (UEFI). 6

Core Platform Silicon

Connectors and peripherals

Package repository

Modular Benefits for the Platform Developer Package parameters are easily adjustable without recompiling Packages are easily removed if the functionality isn t required Packages don t depend on outdated coding practices Enabling configuration tools to reduce configuration complexity Binary firmware solutions can be extensible 11

Agenda Binary Firmware Management The Binary Firmware Workflow Developing Firmware Components Summary and Next Steps

The Binary Firmware Workflow Start New Project Based on Reference Change Peripherals & Connectors Configure Firmware Components Build a Custom Firmware Image How do customers extend firmware functionality in a binary workflow? 13

Intel Firmware Engine Package vs. UEFI Driver UEFI Drivers provide extensibility, but packages have additional features Expose configurable parameters as patchable-in-binary PCDs Describes configuration parameters in localized Unicode strings Describes connections to other components and connectors Contains release & debug versions of binaries for bring-up debugging 14 UEFI Unified Extensible Firmware Interface DXE Driver execution Environment PEI Pre-EFI Initialization PCD Platform Configuration Database

Usage Example: MinnowBoard Max No Services Associated with Networking Hardware 15

Add Network Service Gear to Project Drag & drop Network Service from list of Peripherals 16

Configure Networking Parameters Select component and adjust IPv4/IPv6 value in Properties 17

Add Boot to PXE Server Feature 18 PXE - Preboot execution Environment

19 Build and Test the New Firmware

Reference Firmware with Built-In Extensibility Binary packages extend the existing firmware ecosystem Specific functionality with adjustable parameters Hardware-specific packages can be provided by the IHV New functionality can be provided by an IBV or ISV ODMs can configure options w/o a user setup Simple configuration without IP exposure Extensibility is key to a healthy firmware ecosystem 20 IHV Independent Hardware Vendor IBV Independent BIOS Vendor ISV Independent Software Vendor ODM Original Device Manufacturer

Agenda Binary Firmware Management The Binary Firmware Workflow Developing Firmware Components Summary and Next Steps

Developing Firmware Components Modular coding is easier if you do it from the start photo credit: Brian Richardson 22

Intel Firmware Engine Software Development Kit Package Make BinPkg Binary Package Repository Maintenance Tool (RMT) Intel Firmware Engine repository Resulting package includes release and debug binaries Platform Project Intel Firmware Engine application UEFI source code, with Intel Firmware Engine extensions Projects are a collection of binary packages 23

Core Principles for Creating Binary Packages Make parameters in firmware patchable Adding metadata for configuration tools Remove circular module dependencies Remove legacy dependencies 24

Make Parameters in Firmware Patchable Use PcdsPatchableInModule to describe developer parameters PcdFixedAtBuild can t be modified by the developer Convert PcdsDynamic to PcdsDynamicEx The PcdsDynamic type does not work with binary distribution Review & update PCD information in package.dec file Prompt, help, validation expression, valid lists, valid range, and error codes/error messages 25 PCD Platform Configuration Database

Package DEC File Package UNI File 26

27 Package DEC File

Adding Metadata for Configuration Tools Create help, prompt & declaration for PCDs Declaration in.dec file & help/prompt in associated.uni file Define package connections Dependencies, connection points & configuration questions (.INF file) Name & description of a connector component (Unicode) Name & description of supported connection points (Unicode) Connector component icon (optional) 28

[Defines] INF_VERSION = 0x00010018 BASE_NAME = NanoUsb FILE_GUID = 9CEEE4A6-1109-4582-9DFD-647FB18519EE MODULE_TYPE = USER_DEFINED VERSION_STRING = 0.8 MODULE_UNI_FILE = NanoUsb.uni User extensions to package.inf file for Intel Firmware Engine [Packages] HardwarePkg/HardwarePkg.dec [Pcd] ghardwarepkgtokenspaceguid.unicodeannotationstring [UserExtensions.Intel."Properties"] CONNECTOR_NAME = Nano USB LOCATION = EDGE [UserExtensions.Intel."ConnectionPoints"] BOARD ghardwarepkgconnectiontypespaceguid.usbbus UP PERIPHERAL ghardwarepkgconnectiontypespaceguid.usbbus DOWN [UserExtensions.TianoCore."ExtraFiles"] NanoUsbProperties.uni NanoUsb.png 29

[UserExtensions.Intel."ConnectionPoints"] BOARD ghardwarepkgconnectiontypespaceguid.usbbus UP PERIPHERAL ghardwarepkgconnectiontypespaceguid.usbbus DOWN UP DOWN 30

31

Circular Dependencies & Legacy Dependencies Packages cannot have circular dependencies Properly declared and described with connections in.dec/.inf Packages cannot have legacy dependencies No use of EFI Development Kit (EDK) or EDK Compatibility Package (ECP) in Intel Firmware Engine packages No dependency on legacy BIOS calls (INT XXh, 16-bit instructions, ) These issues must be resolved before attempting to build a package 32

Build Process, Packaging and Distribution Package Make BinPkg Binary Package Repository Maintenance Tool (RMT) Intel Firmware Engine repository Provided by SDK NanoUsb.inf NanoUsb.uni NanoUsb.png NanoUsbProperties.uni NanoUsb.dist.DIST files use UEFI Distribution Package (UDP) format NanoUsb.dist Customer downloads new package and adds to repository using RMT 33

What s in the Next Intel Firmware Engine SDK? Additional tools to simplify package creation Intel Firmware Engine Package Creator - Builds skeleton code for new packages, components and UEFI drivers - Wizard-style interface creates code based on developer input Intel Firmware Engine Package Converter - Convert existing UDK2014.SP1 code to binary packages - Identify non-patchable PCDs and circular dependencies Intel provides tools to simplify binary package development 34 Intel Firmware Engine Software Development Kit (Intel Firmware Engine SDK)

Agenda Binary Firmware Management The Binary Firmware Workflow Developing Firmware Components Summary and Next Steps

Summary Binary firmware solutions can be extensible Extensibility is key to a healthy firmware ecosystem Intel provides tools to simplify binary package development 36

Next Steps Use modular practices to enable binary firmware distribution Evaluate existing UEFI drivers and features for binary packages Develop and distribute firmware packages using the Intel Firmware Engine Software Development Kit intel.com/firmwareengine 37

Additional Sources of Information A PDF of this presentation is available from our Technical Session Catalog: www.intel.com/idfsessionssf. This URL is also printed on the top of Session Agenda Pages in the Pocket Guide. Demos in the showcase booth #511 Tech Chats - Using Intel Firmware Engine to Generate Simulated Platforms for Wind River * Simics * Wed -1:00 level 2 -Station 5 Develop and distribute firmware packages using the Intel Firmware Engine Software Development Kit intel.com/firmwareengine 38

Other Technical Sessions Session ID Title Day Time Room STTS001 Firmware in the Data Center: Building a Modern Deployment Framework Using UEFI and Redfish REST APIs Tue 11:00 2002 STTS002 Building a Firmware Component Ecosystem with the Intel Firmware Engine Tue 1:15 2002 STTS003 Developing Best-in-Class Security Principles with Open Source Firmware Tue 2:30 2002 STTS004 STTS005 Planning and Predicting Big Data Clusters for Spark*, NoSQL and SQL-on- Hadoop* Deployments Accelerating Real-time Analytics Insights with Open Source Software from Intel Tue 4:00 2002 Wed 9:30 2002 = DONE 39

Legal Notices and Disclaimers Intel technologies features and benefits depend on system configuration and may require enabled hardware, software or service activation. Learn more at intel.com, or from the OEM or retailer. No computer system can be absolutely secure. Tests document performance of components on a particular test, in specific systems. Differences in hardware, software, or configuration will affect actual performance. Consult other sources of information to evaluate performance as you consider your purchase. For more complete information about performance and benchmark results, visit http://www.intel.com/performance. Cost reduction scenarios described are intended as examples of how a given Intel-based product, in the specified circumstances and configurations, may affect future costs and provide cost savings. Circumstances will vary. Intel does not guarantee any costs or cost reduction. This document contains information on products, services and/or processes in development. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest forecast, schedule, specifications and roadmaps. Statements in this document that refer to Intel s plans and expectations for the quarter, the year, and the future, are forward-looking statements that involve a number of risks and uncertainties. A detailed discussion of the factors that could affect Intel s results and plans is included in Intel s SEC filings, including the annual report on Form 10-K. The products described may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document. Intel does not control or audit third-party benchmark data or the web sites referenced in this document. You should visit the referenced web site and confirm whether referenced data are accurate. Intel and the Intel logo are trademarks of Intel Corporation in the United States and other countries. *Other names and brands may be claimed as the property of others. 2015 Intel Corporation. 40

Risk Factors The above statements and any others in this document that refer to plans and expectations for the second quarter, the year and the future are forwardlooking statements that involve a number of risks and uncertainties. Words such as "anticipates," "expects," "intends," "plans," "believes," "seeks," "estimates," "may," "will," "should" and their variations identify forward-looking statements. Statements that refer to or are based on projections, uncertain events or assumptions also identify forward-looking statements. Many factors could affect Intel's actual results, and variances from Intel's current expectations regarding such factors could cause actual results to differ materially from those expressed in these forward-looking statements. Intel presently considers the following to be important factors that could cause actual results to differ materially from the company's expectations. Demand for Intel's products is highly variable and could differ from expectations due to factors including changes in business and economic conditions; consumer confidence or income levels; the introduction, availability and market acceptance of Intel's products, products used together with Intel products and competitors' products; competitive and pricing pressures, including actions taken by competitors; supply constraints and other disruptions affecting customers; changes in customer order patterns including order cancellations; and changes in the level of inventory at customers. Intel's gross margin percentage could vary significantly from expectations based on capacity utilization; variations in inventory valuation, including variations related to the timing of qualifying products for sale; changes in revenue levels; segment product mix; the timing and execution of the manufacturing ramp and associated costs; excess or obsolete inventory; changes in unit costs; defects or disruptions in the supply of materials or resources; and product manufacturing quality/yields. Variations in gross margin may also be caused by the timing of Intel product introductions and related expenses, including marketing expenses, and Intel's ability to respond quickly to technological developments and to introduce new products or incorporate new features into existing products, which may result in restructuring and asset impairment charges. Intel's results could be affected by adverse economic, social, political and physical/infrastructure conditions in countries where Intel, its customers or its suppliers operate, including military conflict and other security risks, natural disasters, infrastructure disruptions, health concerns and fluctuations in currency exchange rates. Results may also be affected by the formal or informal imposition by countries of new or revised export and/or import and doing-business regulations, which could be changed without prior notice. Intel operates in highly competitive industries and its operations have high costs that are either fixed or difficult to reduce in the short term. The amount, timing and execution of Intel's stock repurchase program could be affected by changes in Intel's priorities for the use of cash, such as operational spending, capital spending, acquisitions, and as a result of changes to Intel's cash flows or changes in tax laws. Product defects or errata (deviations from published specifications) may adversely impact our expenses, revenues and reputation. Intel's results could be affected by litigation or regulatory matters involving intellectual property, stockholder, consumer, antitrust, disclosure and other issues. An unfavorable ruling could include monetary damages or an injunction prohibiting Intel from manufacturing or selling one or more products, precluding particular business practices, impacting Intel's ability to design its products, or requiring other remedies such as compulsory licensing of intellectual property. Intel's results may be affected by the timing of closing of acquisitions, divestitures and other significant transactions. A detailed discussion of these and other factors that could affect Intel's results is included in Intel's SEC filings, including the company's most recent reports on Form 10-Q, Form 10-K and earnings release. 41 Rev. 4/14/15