UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source...

20
presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest – September 20-22, 2016 Presented by Brian Richardson (Intel) and Leif Lindholm (Linaro) UEFI Plugfest Sept 2016 www.uefi.org 1 Updated 2011-06-01

Transcript of UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source...

Page 1: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

presented by

UEFI Open Source Community:tianocore.org update

UEFI US Fall Plugfest – September 20-22, 2016Presented by Brian Richardson (Intel) and

Leif Lindholm (Linaro)

UEFI Plugfest – Sept 2016 www.uefi.org 1

Updated 2011-06-01

Page 2: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Agenda

• Introduction

• Recent changes

• Plans for the future

• Summary / Q&A

UEFI Plugfest – Sept 2016 www.uefi.org 2

Page 3: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Introduction

UEFI Open Source Community: tianocore.org update

UEFI Plugfest – Sept 2016 www.uefi.org 3

Page 4: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

UEFI Plugfest – Sept 2016 www.uefi.org 4

Mission Improve contribution Increase code quality Provide regular updates

and more end-to-end solutions

Vision A more active EDK II

developer community A transparent decision

making process based on community feedback

Community supporting EDK II, an open

source implementation of UEFI

Page 5: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Recent changes

UEFI Open Source Community: tianocore.org update

UEFI Plugfest – Sept 2016 www.uefi.org 5

Page 6: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Recent changes

• Governance

• Transition to github

• Staging branch workflow

• UEFI FAT license

• LLVM/Clang & GCC

• Bugzilla

UEFI Plugfest – Sept 2016 www.uefi.org 6

Page 7: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Governance

• Tianocore Stewards

–Andrew Fish – Apple

– Leif Lindholm – Linaro

–Michael Kinney – Intel

• Tianocore governance updated, licensing and distribution remains unchanged

• Broader input to grow the community

UEFI Plugfest – Sept 2016 www.uefi.org 7

Page 8: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Transition to github

• Moved from SVN to github in Jan 2016

–https://github.com/tianocore/

• Multiple repositories in use for EDK II, tools, non-OSI code, and new features

• Documentation will also transition to github (wiki & gitbooks)

UEFI Plugfest – Sept 2016 www.uefi.org 8

Page 9: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Staging branch workflow

• Staging branches help keep the main edk2 branch focused on quality code

• Process details ...https://github.com/tianocore/edk2-staging

– Announce new branch via e-mail

– Create an edk2-staging branch

– Branch maintainers sync to edk2/master

– Use edk2 review process to submit edk2-staging branch to edk2/master

UEFI Plugfest – Sept 2016 www.uefi.org 9

Page 10: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

UEFI FAT license

• As of March 2016, Microsoft removed the use clause from UEFI FAT sources

– Very big deal for Linux distros & Ovmf/Aavmf

– Increases UEFI adoption in virtual machines, which primarily shipped SeaBIOS

• Now covered under 2-clause BSD with no field of use restrictionhttps://github.com/tianocore/edk2/tree/master/FatPkghttps://github.com/tianocore/edk2/tree/master/FatBinPkg

UEFI Plugfest – Sept 2016 www.uefi.org 10

Page 11: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

LLVM/Clang & GCC

• EDK II now enables link time optimization (LTO) for LLVM Clang 3.8 & GCC 5.3

–Good example of community collaboration

• Enables a platform for code analysis tools

– Example: http://clang-analyzer.llvm.org/

• Validated on Linux

UEFI Plugfest – Sept 2016 www.uefi.org 11

Page 12: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Binary Sizes vs VS2015

12

Release Mode GCC5 CLANG38PEIFV 26% -15%DXEFV 4% -4%FvMainCompact 2% 0%

EDK IIOVMF

x64

Release Mode GCC5 CLANG38FVRECOVERY 5% 6%FVMAIN 5% 16%FvMainCompact 9% 15%

Intel® Galileo

IA32

Page 13: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Bugzilla

• bugzilla.tianocore.org

– EDK II/platform issues & feature requests

• Security issues follow a special processhttps://github.com/tianocore/tianocore.github.io/wiki/Reporting-Security-Issues

–Never use e-mail to discuss a security issue

–Report issues under the “Tianocore Security Issues” product in Bugzilla

–Never use e-mail to discuss a security issue

UEFI Plugfest – Sept 2016 www.uefi.org 13

Page 14: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Plans for the future

UEFI Open Source Community: tianocore.org update

UEFI Plugfest – Sept 2016 www.uefi.org 14

Page 15: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Plans for the future

• Improve website content & organization

• Add test framework & test cases for edk2

• Release management

–Goal is to have labeled releases on a regular cadence (2-4 per year)

– Features and cadence planned using community input

UEFI Plugfest – Sept 2016 www.uefi.org 15

Page 16: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Release management

UEFI Plugfest – Sept 2016 www.uefi.org 16

Requirement/design reviewsImplement/integrate featuresValidation

edk2

stagingn

platformn

platform fix

fix

UDK

Fixes Validation Release

platform fix

fix fix

Page 17: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

UDK2017 Feature Highlights

UEFI 2.6 Features

• eMMC/SD Stack

• MemoryAttributesTable

• IPv6 Http Boot

• RamDisk

• URI Configuration

UEFI PI 1.4a Errata

EDK II Implementation

• OpenSSL 1.0.2h

• Transition to NASM

• CPU MP initialization library

• Drivers– PiSmmCpuDxeSmm

– SataController (generic)

– PciHostBridgeDxe (generic)

– LoadFileOnFv2

– PciSioSerialDxe/SerialDxe

UEFI Plugfest – Sept 2016 www.uefi.org 17

Coming in Q1 2017

Page 18: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Plans for the future (cont.)

• Open platforms–More example code for new developers

– Implemented similarities as core libraries

– Enable centralized validation

–Provide greater visibility for impact of changes to core code

–Details being discussed on edk2-devel (or grab the EDK II stewards for a focus session)

UEFI Plugfest – Sept 2016 www.uefi.org 18

Page 19: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Summary

• TianoCore supports open source UEFI development using EDK II

• Recent improvements include a move to github and compiler optimizations

• Future improvements will improve code quality and open platform availability

UEFI Plugfest – Sept 2016 www.uefi.org 19

Page 20: UEFI Open Source Community: tianocore.org update · 2011. 6. 1. · presented by UEFI Open Source Community: tianocore.org update UEFI US Fall Plugfest –September 20-22, 2016 Presented

Thanks for attending the UEFI US Fall Plugfest 2016

For more information on the Unified EFI Forum and UEFI Specifications, visit http://www.uefi.org

presented by

UEFI Plugfest – Sept 2016 www.uefi.org 20