{"$schema": "https://c3voc.de/schedule/schema.json", "generator": {"name": "pretalx", "version": "2026.1.0.dev0"}, "schedule": {"url": "https://cfp.osfc.io/osfc2020/schedule/", "version": "0.4", "base_url": "https://cfp.osfc.io", "conference": {"acronym": "osfc2020", "title": "Open Source Firmware Conference 2020", "start": "2020-12-01", "end": "2020-12-03", "daysCount": 3, "timeslot_duration": "00:05", "time_zone_name": "Europe/Berlin", "colors": {"primary": "#CAE6DF"}, "rooms": [{"name": "Main Stage", "slug": "446-main-stage", "guid": "8b323b8d-5f96-56d1-a5bb-3a2d29896619", "description": null, "capacity": null}, {"name": "Session Area", "slug": "555-session-area", "guid": "24134f32-8c1f-567d-ab36-d985418b67ee", "description": null, "capacity": null}], "tracks": [], "days": [{"index": 1, "date": "2020-12-01", "day_start": "2020-12-01T04:00:00+01:00", "day_end": "2020-12-02T03:59:00+01:00", "rooms": {"Main Stage": [{"guid": "8032140a-bcd8-59a5-92fd-4317344c57af", "code": "NXKGR3", "id": 6838, "logo": null, "date": "2020-12-01T14:00:00+01:00", "start": "14:00", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6838-opening-event-osfc-2020", "url": "https://cfp.osfc.io/osfc2020/talk/NXKGR3/", "title": "Opening Event OSFC 2020", "subtitle": "", "track": null, "type": "Event Info", "language": "en", "abstract": "Opening Event OSFC 2020", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "K7LB7J", "name": "Jens Topp", "avatar": "https://cfp.osfc.io/media/avatars/K7LB7J_4WC0nf2.webp", "biography": "Firmware developer at 9elements Cyber Security", "public_name": "Jens Topp", "guid": "70365016-f36d-5603-92d3-afcca3e1c949", "url": "https://cfp.osfc.io/osfc2020/speaker/K7LB7J/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/NXKGR3/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/NXKGR3/", "attachments": []}, {"guid": "bd652b8d-4c75-5024-9398-3856a3badf84", "code": "BDJTMQ", "id": 6259, "logo": null, "date": "2020-12-01T14:15:00+01:00", "start": "14:15", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6259-why-lvfs-is-essential-for-oems", "url": "https://cfp.osfc.io/osfc2020/talk/BDJTMQ/", "title": "Why LVFS is Essential for OEMs", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "The Linux Vendor Firmware Service is a webapp used by OEMs, ODMs and ISVs to distribute firmware updates safely and securely to millions of Linux users. In this talk I will give a quick overview of what the LVFS actually is, the extra services it provides and describe the ways the Linux client communicates with the server. I\u2019ll explain how the LVFS is essential for OEMs and why ignoring the LVFS and Linux users is short-sighted from a technical and business point of view.\r\n\r\nIn the talk I\u2019ll show lots of pictures and graphs, which will make some vendors feel good, and make other vendors feel bad. I\u2019ll include lots of technical details that might be interesting to OEMs and Linux users who are deploying firmware updates at scale.\r\n\r\nDuring the talk I\u2019ll also hint at a future specification we\u2019re working on, designed to raise the level of firmware security across the entire ecosystem. The talk will finish with a look to the future.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "DMZWKT", "name": "Richard Hughes", "avatar": "https://cfp.osfc.io/media/avatars/DMZWKT_WE04WA1.webp", "biography": "Richard has over 15 years of experience developing open source software. He is the maintainer of fwupd, the LVFS, GNOME Software, AppStream-glib, PackageKit, gnome-packagekit, gnome-power-manager, gnome-color-manager, colord, and UPower and also contributes to many other projects and opensource standards.\r\n\r\nRichard graduated in 2007 from the University of Surrey with a Masters in Electronics Engineering. He now works as a principle engineer for Red Hat. Richard's outside interests include taking photos, eating good food and looking after his two daughters.", "public_name": "Richard Hughes", "guid": "4a3a0291-f12b-5321-a6ae-997afd778c2c", "url": "https://cfp.osfc.io/osfc2020/speaker/DMZWKT/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/BDJTMQ/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/BDJTMQ/", "attachments": []}, {"guid": "3d28d056-85c1-5179-bd97-56b64cafc0a5", "code": "E8TPMH", "id": 6468, "logo": null, "date": "2020-12-01T15:00:00+01:00", "start": "15:00", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6468-uefi-compliance-testing", "url": "https://cfp.osfc.io/osfc2020/talk/E8TPMH/", "title": "UEFI compliance testing", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "The UEFI specification is both extensive and intricate. Development of firmware against the specification would not be possible without automated test tools. This talk covers the experience with  UEFI SCT and the FirmWare Test Suite as well as the continuous integration testing for U-Boot. The remaining white areas are highlighted.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "RXDBSA", "name": "Heinrich Schuchardt", "avatar": null, "biography": "Heinrich is the maintainer of the UEFI sub-system in U-Boot.", "public_name": "Heinrich Schuchardt", "guid": "d69fa1dc-4ac9-5fb5-8378-914e366a6f1b", "url": "https://cfp.osfc.io/osfc2020/speaker/RXDBSA/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/E8TPMH/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/E8TPMH/", "attachments": [{"title": "Slides", "url": "/media/osfc2020/submissions/E8TPMH/resources/UEFI_Compliance_Testing_final_uee4W3c.pdf", "type": "related"}]}, {"guid": "8695dfb1-fb45-5739-9f0c-3aec44db00c5", "code": "XLBNJP", "id": 6490, "logo": null, "date": "2020-12-01T16:15:00+01:00", "start": "16:15", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6490-coreboot-thermal-management-on-intel-based-systems", "url": "https://cfp.osfc.io/osfc2020/talk/XLBNJP/", "title": "coreboot Thermal Management on Intel based systems", "subtitle": "", "track": null, "type": "short Talk", "language": "en", "abstract": "In today's smart computing platforms, a thermal management solution needs to be reliable and sustainable on various set of devices like 2-in-1s or tablets, client or edge and even on IOT devices. This presentation talks about the thermal management code flow in coreboot firmware for Intel SoC-based Chrome systems and the major thermal code clean, in which years of technical debt was cleaned up.  In addition, coreboot introduced a new DPTF driver which replaces the static ASL policy files and generates SSDT-based thermal policy table at runtime. This eases the enablement and tuning processes for thermal policies to ensure the best end-user experience on the system.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "NTVYJH", "name": "Sumeet Pawnikar", "avatar": "https://cfp.osfc.io/media/avatars/NTVYJH_MzhuuEr.webp", "biography": "Sumeet Pawnikar is working as senior system software developer at Intel. \r\nHe has majorly worked on embedded systems, Android OS based Smartphone and Tablet devices for Linux BSP development. He has widely worked on ARM and IA architecture. He has over 14 years of experience in open source software development. \r\nLast 4+ years working on overall system thermal management for various Intel SoC based Chrome OS projects, this includes firmware, kernel/OS and application interaction. He has been involved in design, development and implementation of thermal policies along with enablement and tuning thermal policies on Intel Chrome reference boards and support various OEM/ODM designs.", "public_name": "Sumeet Pawnikar", "guid": "8b109bdb-cfdd-516e-af4b-1f9205997834", "url": "https://cfp.osfc.io/osfc2020/speaker/NTVYJH/"}, {"code": "YZBZFU", "name": "Timothy Wawrzynczak", "avatar": null, "biography": "Tim has nearly 15 years experience in firmware, including: automated welding machines, adding WiFi to Things, wireless consumer electronics, automated liquid chromotography, safety-critical systems, 3-phase power monitoring & voltage sag correction, robotics & machine vision, and now works on firmware for Chrome OS devices.", "public_name": "Timothy Wawrzynczak", "guid": "5735e21c-dedf-5f71-9bbe-82f111542850", "url": "https://cfp.osfc.io/osfc2020/speaker/YZBZFU/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/XLBNJP/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/XLBNJP/", "attachments": [{"title": "Slides", "url": "/media/osfc2020/submissions/XLBNJP/resources/coreboot_Thermal_Management_on_Intel_based_systems_lDkKEY5.pdf", "type": "related"}]}, {"guid": "4c66de4c-c957-565b-a6fa-f2ea3f5dd6ca", "code": "YQDJGJ", "id": 6339, "logo": null, "date": "2020-12-01T16:45:00+01:00", "start": "16:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6339-bootling-linux-more-safely-with-safeboot", "url": "https://cfp.osfc.io/osfc2020/talk/YQDJGJ/", "title": "Bootling Linux more safely with safeboot", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "Configuring all of the pieces for UEFI Secure Boot, generating keys in hardware tokens, signing kernels, integrating LUKS disk encryption with the TPM, and remotely attesting to the state of the system is very complex, yet vital part of locking down laptops and servers against adversaries. Users and administrators need a tool that wraps up all of the complexity into the few operations that they need from day to day: signing new kernels, decrypting their disks at boot, protecting the system from runtime attackers, attesting to the integrity of their systems, and so on. safeboot and tpm2-attest are (early versions of) those tools!", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "7KGSHZ", "name": "Trammell Hudson", "avatar": "https://cfp.osfc.io/media/avatars/7KGSHZ_BbSZMMs.webp", "biography": "I like to take things apart.", "public_name": "Trammell Hudson", "guid": "cdd2bbf8-bcfd-521f-b615-1198a23348e2", "url": "https://cfp.osfc.io/osfc2020/speaker/7KGSHZ/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/YQDJGJ/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/YQDJGJ/", "attachments": []}, {"guid": "4a73f5c9-eacf-5b32-9111-fb9fcccf6e71", "code": "MCJASB", "id": 6425, "logo": null, "date": "2020-12-01T17:30:00+01:00", "start": "17:30", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6425-prm-smm-goes-on-a-diet", "url": "https://cfp.osfc.io/osfc2020/talk/MCJASB/", "title": "PRM: SMM Goes on a Diet", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "System Management Mode (SMM), often referred to as ring -2, is an operating mode in x86 computer architecture that is notoriously difficult to debug and secure. To system software including the hypervisor and kernel, SMM is a lurking black box that can asynchronously take control of all system processors for an arbitrary duration of time leading to unpredictable performance degradation. SMM code is stored on non-volatile storage such as SPI flash and loaded during firmware boot alongside other UEFI code. Over time, SMM\u2019s ubiquity and power has attracted platform manufacturers to accumulate implementations in SMM for a growing amount of technologies that require low-level chipset access.\r\n\r\nPlatform Runtime Mechanism (PRM) is a feature that reverses this trend. It transitions code out of SMM and into the execution context of the OS/VMM by taking advantage of the fact that some code doesn\u2019t require SMM privileges. PRM handlers execute in ring 0 just like other kernel code and can be updated in the OS without resetting the system. Developed in collaboration between Intel and Microsoft, SMI handlers are being ported to PRM handlers today. This talk will primarily discuss the fully open source UEFI code made available for any platform vendor to painlessly enable PRM in their system firmware. It will also cover changes in the ACPI Specification, the open source ACPICA iASL compiler and operating systems such as Linux and Windows to add support for PRM.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "9DMPTB", "name": "Michael Kubacki", "avatar": "https://cfp.osfc.io/media/avatars/9DMPTB_b93mdHj.webp", "biography": "Michael Kubacki is a firmware engineer at Microsoft currently focused on FW/OS interaction and core UEFI features in Azure and Surface. Michael previously worked on system integration and firmware development at Intel across several generations of mobile SoC, client, and server products. He is an advocate for open source software and bringing more production firmware code into open source.", "public_name": "Michael Kubacki", "guid": "004b1061-cb4e-5bc9-ad2d-f53333d49730", "url": "https://cfp.osfc.io/osfc2020/speaker/9DMPTB/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/MCJASB/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/MCJASB/", "attachments": [{"title": "Presentation", "url": "/media/osfc2020/submissions/MCJASB/resources/OSFC_2020_-_Michael_Kubacki_-_Platform_Runtime_Mec_feU6m4i.pdf", "type": "related"}]}, {"guid": "317200ba-1fd7-5d06-9183-26300f55b810", "code": "XTDVXU", "id": 6646, "logo": null, "date": "2020-12-01T19:00:00+01:00", "start": "19:00", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6646-facebook-keynote-building-an-alternative-ecosystem-to-uefi", "url": "https://cfp.osfc.io/osfc2020/talk/XTDVXU/", "title": "Facebook Keynote: Building an alternative ecosystem to UEFI", "subtitle": "", "track": null, "type": "Co-Organizer Keynote", "language": "en", "abstract": "When Linux, and it's open-source development model became a real alternative to operating systems like Solaris, AIX and Windows in the late 1990s, it became obvious that it would need more than higher quality code to succeed. They needed to defeat the fear, uncertainty, and doubt coming from Redmond, as well as catch up with technologically superior solutions from Palo Alto.\r\n\r\n Deploying open firmware is about building an ecosystem, not just deploying a binary. This talk will present an overview of how Facebook is building that ecosystem, the challenges they have come across along the way. This should be of value to anyone working to effect such large-scale change in their ecosystems.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "AHQ8TJ", "name": "John Looney", "avatar": "https://cfp.osfc.io/media/avatars/AHQ8TJ_pLrn95h.webp", "biography": "John Looney has been an SRE since 2005, managing most types of large distributed systems for Google and Facebook. He has been teaching people to be an SRE for over ten years, and is on the SRECon steering committee. He is now a Production Engineering manager, supporting the people who deploy firmware and operating systems to Facebook's fleet. He hopes to ensure that Open System Firmware will be firmware, built for SRE by SREs.", "public_name": "John Looney", "guid": "5cb1451c-84ce-5060-9b96-98cc6c5f227b", "url": "https://cfp.osfc.io/osfc2020/speaker/AHQ8TJ/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/XTDVXU/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/XTDVXU/", "attachments": []}, {"guid": "a94ab74a-20a7-5a66-b58a-69aca141b5e9", "code": "C9FYU3", "id": 6499, "logo": null, "date": "2020-12-01T19:45:00+01:00", "start": "19:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6499-systemtransparency-and-it-s-bootloader-implementation-stboot", "url": "https://cfp.osfc.io/osfc2020/talk/C9FYU3/", "title": "SystemTransparency and it's bootloader implementation stboot", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "In this talk I want to show the details of System Transparency's bootloader implementation. While the general ideas of System Transparency has been introduced during the last year, this talk will give insights of one of its core components \u2014 the stboot bootloader.\r\nAlthough this project is still in its infancy, I will present the state of development. Thereby I provide a look back to early beginnings, the design goals, features that have been added in the course of the last year and recent security improvements. Further, design decisions the project is currently facing will be discussed. Finally, the different deployment scenarios are presented which give detailed information about how to use stboot in individual server fleet setups.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "K7LB7J", "name": "Jens Topp", "avatar": "https://cfp.osfc.io/media/avatars/K7LB7J_4WC0nf2.webp", "biography": "Firmware developer at 9elements Cyber Security", "public_name": "Jens Topp", "guid": "70365016-f36d-5603-92d3-afcca3e1c949", "url": "https://cfp.osfc.io/osfc2020/speaker/K7LB7J/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/C9FYU3/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/C9FYU3/", "attachments": []}, {"guid": "38ffbba5-c907-5f78-94bb-a45e861764a4", "code": "X83KN3", "id": 6261, "logo": null, "date": "2020-12-01T21:15:00+01:00", "start": "21:15", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6261-kexec-based-bootloaders-fast-rebooting-boon-or-bane", "url": "https://cfp.osfc.io/osfc2020/talk/X83KN3/", "title": "kexec based bootloaders/fast rebooting: Boon or Bane", "subtitle": "", "track": null, "type": "short Talk", "language": "en", "abstract": "There is already no shortage of boot loaders for Linux, but Linux Kernel based bootloading via kexec has become popular as it provides the following distinct advantages:\r\n\u2022 Reuse kernel drivers, \u2022 Provides userspace, simplifying development, \u2022 Platform independence, and \u2022 Well tested.\r\n\r\nBoot loaders like GRUB provide several advanced features but they need to replicate functionalities similar to OS, which creates an ever increasing maintenance burden.\r\n\r\nKexec lets you boot your Linux kernel into another kernel without going through the hardware reset and reinitialization performed by system BIOS/firmware:\r\n- Improves boot reliability by replacing lightly-tested firmware drivers with hardened Linux drivers.\r\n- Hardware reset and reinitialization performed by firmware takes minutes, being able to skip it reduces downtime.\r\n- Proven approach for several years \u2013 many kexec based bootloaders are already available [1]\r\n[1]. linuxboot: https://www.linuxboot.org, petitboot: https://github.com/open-power/petitboot\r\n\r\nHowever there is scope for improvement [2] - several Linux drivers don't yet implement .shutdown() callback, which means that kexec boot'ed kernel may panic. Let's discuss these to-dos needed to improve the kexec based bootloaders.\r\n[2]. 10a663a1b151 (\"ata: ahci: Add shutdown to freeze hardware resources of ahci\"), 428c491332bc (\"net: ena: Add PCI shutdown handler to allow safe kexec\").", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "CFKCPX", "name": "Bhupesh Sharma", "avatar": "https://cfp.osfc.io/media/avatars/CFKCPX_3aYxGOz.webp", "biography": "I work with Red Hat and am I a part of the RH kernel team. I have been hacking on bootloaders and kernel since past 13 years. I contribute to Linux, EFI/u-boot bootloader code base and also to user-space utilities like kexec-tools and crash-utility. I also co-maintain crash-utility tool upstream. Bringing up a Silicon (i.e. running the first SW on it) after hardware tapeout is my passion and I have interest in pre-silicon emulator and simulator design methodologies as well.", "public_name": "Bhupesh Sharma", "guid": "720d06bf-3c9d-54e8-88d3-4574b42e2016", "url": "https://cfp.osfc.io/osfc2020/speaker/CFKCPX/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/X83KN3/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/X83KN3/", "attachments": []}, {"guid": "bb7b73a2-d325-5ea8-af0d-9470e691a8ac", "code": "UU3NBZ", "id": 6618, "logo": null, "date": "2020-12-01T21:45:00+01:00", "start": "21:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6618-unit-testing-coreboot", "url": "https://cfp.osfc.io/osfc2020/talk/UU3NBZ/", "title": "Unit testing coreboot", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "In May 2020, initial support for unit testing the coreboot landed in the tree - it was included in the 4.12 release. The unit testing infrastructure means to help the developers write unit tests in a structured and consistent manner across the whole project. Beside the core build system changes, the patchset comprised documentation with a rationale and test examples. From that time, a couple of new tests were upstreamed together with fixes for the firmware code being tested. Passing unit tests suite is currently one of the requirements for changes to be accepted upstream - this is embedded into the gerrit CI system. \r\n\r\nThis talk will present why and how the coreboot benefits from unit tests. It will also show more details about the implementation and how to build/run tests. Furthermore, the talk is meant to discuss the challenges of unit testing C code (specifically firmware) along with the plans for the future.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "T7TMMD", "name": "Jan D\u0105bro\u015b", "avatar": "https://cfp.osfc.io/media/avatars/T7TMMD_Svr8ymN.webp", "biography": "Jan D\u0105bro\u015b is an embedded software engineer interested in firmware, hardware and security. \r\nHe is working at the Semihalf - company based in Cracow, Poland. Previously he was working on different firmware projects (both for embedded and server class platforms), including U-Boot, ARM-TF and EDK2. Recently he has engaged in development of the coreboot.", "public_name": "Jan D\u0105bro\u015b", "guid": "e073e1e7-22fc-544a-86cd-a799c5999e8b", "url": "https://cfp.osfc.io/osfc2020/speaker/T7TMMD/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/UU3NBZ/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/UU3NBZ/", "attachments": [{"title": "coreboot unit testing slides", "url": "/media/osfc2020/submissions/UU3NBZ/resources/OSFC2020_coreboot_unit_testing_ScVspcR.pdf", "type": "related"}]}, {"guid": "6ff00f79-4f30-570e-9992-6d0161cea1f0", "code": "RAGN7M", "id": 6438, "logo": null, "date": "2020-12-01T22:30:00+01:00", "start": "22:30", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6438-guiding-engineering-teams-toward-a-more-secure-usage-of-u-boot", "url": "https://cfp.osfc.io/osfc2020/talk/RAGN7M/", "title": "Guiding Engineering Teams Toward a More Secure Usage of U-Boot", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "With its rich feature set, regular release cycle cadence, and adoption into silicon vendors\u2019 board support packages, it is no wonder that the Open Source Das U-Boot bootloader has become so ubiquitous throughout products spanning a breadth of application domains.  However, much of what makes U-Boot so helpful to embedded systems engineers can be a double-edged sword; permissive functionality and readily available reference configurations represent a form of \u201csecurity debt\u201d that must be paid off by the engineering teams integrating U-Boot into their product.  In both public research and private security assessments, it is commonly found that devices are vulnerable to abuse as a result of product vendors failing to invest adequate time and effort into securing their U-Boot configurations and customizations.\r\n\r\nThis talk will describe common security failure patterns observed during security assessments of products using U-Boot, introduce NCC Group\u2019s \u201c[Depthcharge](https://depthcharge.readthedocs.io)\u201d toolkit built to support U-Boot security auditing, and present its new functionality that is aimed at providing engineering teams with a means to avoid inadvertent inclusion of functionality that may be an ill-fit for their specific security objectives.  At a higher level, this talk aims to foster discussions about how we call all help ensure that product development teams customize, configure, and deploy U-Boot more securely, such that end users remain safe.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "9HPLTD", "name": "Deleted User", "avatar": null, "biography": "", "public_name": "Deleted User", "guid": "fd0545f3-81d8-55ac-a6e5-ba2fba319e31", "url": "https://cfp.osfc.io/osfc2020/speaker/9HPLTD/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/RAGN7M/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/RAGN7M/", "attachments": []}, {"guid": "31339d8b-052c-5a3e-aa4a-c0686c6f090e", "code": "E8JF8P", "id": 6645, "logo": null, "date": "2020-12-02T00:00:00+01:00", "start": "00:00", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6645-marvell-octeon-tx2-cn913x-fully-open-source-firmware", "url": "https://cfp.osfc.io/osfc2020/talk/E8JF8P/", "title": "Marvell Octeon TX2 CN913x fully open source firmware", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "EDK2 firmware for Marvell Octeon TX2 CN913x chips can now be built entirely from public components. It was possible thanks to the recent upstreaming efforts to the TF-A and the Tianocore edk2-platforms mainline repositories. As this platform is a straight line successor of the Marvell Armada 7k8k SoCs family, its open source firmware support originated in 2016 and was one of the first ARMv8 ports published. This talk will describe the mentioned systems and their firmware structure. It will also demonstrate the evolution from the early days until present, as well as the future plans in the context of the new SystemReady ES compliance.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "UY88NG", "name": "Marcin Wojtas", "avatar": "https://cfp.osfc.io/media/avatars/UY88NG_OGBSYD0.webp", "biography": "Head of Engineering in Semihalf. Passionate about embedded software and hardware. Contributor to a number of open source projects, including Linux kernel, Tianocore EDK2 and TF-A. FreeBSD committer.", "public_name": "Marcin Wojtas", "guid": "9f325edb-a3fe-5831-afc3-22f50b6bf075", "url": "https://cfp.osfc.io/osfc2020/speaker/UY88NG/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/E8JF8P/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/E8JF8P/", "attachments": [{"title": "Slide deck in pdf", "url": "/media/osfc2020/submissions/E8JF8P/resources/CN913x_open_source_firmware_RysXNDc.pdf", "type": "related"}]}, {"guid": "c87466ce-56af-5b7f-bbee-f5887119505c", "code": "ECQ88N", "id": 6629, "logo": null, "date": "2020-12-02T00:45:00+01:00", "start": "00:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6629-an-open-source-spdm-implementation-for-secure-device-communication", "url": "https://cfp.osfc.io/osfc2020/talk/ECQ88N/", "title": "An open source SPDM implementation for secure device communication", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "Security Protocol and Data Model (SPDM) is a standard published by the Distributed Management Task Force (DMTF) organization Platform Management Components Intercommunication (PMCI) working group. SPDM\u2019s vision is to resolve the long-lasting problem of compatible secure communication solution between two endpoints of embedded systems. To this end, SPDM defines message formats, data objects, and sequences for performing message exchanges. The protocols defined by SPDM can be used for a wide range of security functionalities, such as authentication of hardware / firmware identities, delivering measurements and performing attestation, and session key establishment.\r\n \r\nThis presentation introduces the open-source tool - OpenSPDM. The OpenSPDM is written in C. It implements an SPDM requester utility to validate a vendor\u2019s responder implementation. It also implement an SPDM responder utility to validate a vender\u2019s requester implementation. The talk covers SPDM 1.0 device authentication and firmware measurement collection and SPDM 1.1 session creation for the data communication protection.\r\n \r\nThe audience will learn the main components of the SPDM protocol. A firmware solution builder will learn how to implement an SPDM requester to perform the device authentication and attestation and create a secured session with a target device. A device builder will learn how to implement an SPDM responder to respond to the authentication and measurement requests and create a secured session to protect the communication.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "YMDVAF", "name": "Jiewen Yao", "avatar": "https://cfp.osfc.io/media/avatars/YMDVAF_I9LkqOb.webp", "biography": "Jiewen Yao is a principal engineer in the Intel Architecture, Graphics, and Software Group. He has been engaged as a firmware developer for over 15 years. He is a member of the UEFI Security sub team, and the TCG PC Client sub working group. He is the maintainer of tianocore/EDKII security package and crypto package.", "public_name": "Jiewen Yao", "guid": "f96d68b4-8a3d-512d-8423-ddf5debb1001", "url": "https://cfp.osfc.io/osfc2020/speaker/YMDVAF/"}, {"code": "RPMDGJ", "name": "Xiaoyu Ruan", "avatar": null, "biography": null, "public_name": "Xiaoyu Ruan", "guid": "018fb0c7-40fb-58b7-b3e8-3e38608cd5d4", "url": "https://cfp.osfc.io/osfc2020/speaker/RPMDGJ/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/ECQ88N/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/ECQ88N/", "attachments": [{"title": "Presentation", "url": "/media/osfc2020/submissions/ECQ88N/resources/An_open_source_SPDM_implementation_for_secure_devi_kmIgAQe.pdf", "type": "related"}]}]}}, {"index": 2, "date": "2020-12-02", "day_start": "2020-12-02T04:00:00+01:00", "day_end": "2020-12-03T03:59:00+01:00", "rooms": {"Main Stage": [{"guid": "42d10ac7-4633-57d9-91fd-243064ca232d", "code": "KS3XXB", "id": 6361, "logo": null, "date": "2020-12-02T14:00:00+01:00", "start": "14:00", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6361-power9-support-in-coreboot", "url": "https://cfp.osfc.io/osfc2020/talk/KS3XXB/", "title": "POWER9 support in coreboot", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "coreboot is an open source firmware development framework and its history is\r\nreaching 1999. Its primary goal was to boot the machine as fast as possible and\r\nlaunch a Linux kernel. OpenPOWER firmware has a similar goal: initialize the\r\nhardware and launch a Linux kernel. coreboot has always been in favor of open\r\nhardware and open firmware solutions. The best proof is that the first open\r\nfirmware implementation for RISC-V appeared right here, in coreboot. Now the\r\ntime comes for OpenPOWER.\r\n\r\nThis talk will describe the plans of porting the POWER9 architecture to\r\ncoreboot along with Talos II and Talos II Lite machines. With joint cooperation\r\nof 3mdeb Embedded Systems Consulting, Insurgo Technologies Libres/Open\r\nTechnologies and Raptor Computing Systems this plan may become a reality in the\r\nnear future. In this presentation the details of coreboot port for POWER9 will\r\nbe discussed covering hostboot, skiboot and petitboot and how they fit into\r\ncoreboot firmware model.\r\n\r\nAlthough the coreboot project aims to support fully open source boot firmware,\r\nit is not always possible to avoid binary blobs that initialize hardware. A\r\ngood example of such a situation is modern x86 architecture. That is why we\r\nneed to push open hardware and firmware such as RISC-V and OpenPOWER. By\r\nenabling POWER9 hardware in coreboot, the OpenPOWER will become much more\r\npopular. The community will have a chance to benefit from using coreboot on the\r\nopen platforms such as Talos II and Talos II Lite, platforms which respect your\r\nfreedom (RYF).", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "CF97CT", "name": "Micha\u0142 \u017bygowski", "avatar": "https://cfp.osfc.io/media/avatars/CF97CT_VBWxUC0.webp", "biography": "Firmware Engineer with networking background. Feels comfortable with low-level development using C/C++ and assembly. Interested in advanced hardware features, security and coreboot. Core developer of coreboot. Maintainer of Braswell SoC, PC Engines, Protectli and Libretrend platforms. Creating open source firmware solution in 3mdeb Embedded Systems Consulting for 3 years. Active speaker at various open source firmware related conferences: Open Source Firmware Conference 2018 and 2019, Xen Developer And Design Summit 2020 and others.", "public_name": "Micha\u0142 \u017bygowski", "guid": "81e11dcf-e885-58b5-b543-79939b025ac7", "url": "https://cfp.osfc.io/osfc2020/speaker/CF97CT/"}, {"code": "D8FJUY", "name": "Piotr Kr\u00f3l", "avatar": "https://cfp.osfc.io/media/avatars/D8FJUY_clDzu23.webp", "biography": "Piotr Kr\u00f3l is a multi-disciplinary executive running several companies in the embedded systems and semiconductor industries, including 3mdeb, LPN Plant, and Vitro Technology. Prior to starting his own companies, he worked as an engineer for Intel for over seven years. Piotr is also an open-source evangelist, active in the Open Source Firmware (e.g. coreboot) and Linux communities.", "public_name": "Piotr Kr\u00f3l", "guid": "795111ac-becf-54fb-96a3-f96c3de991ba", "url": "https://cfp.osfc.io/osfc2020/speaker/D8FJUY/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/KS3XXB/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/KS3XXB/", "attachments": [{"title": "Slides", "url": "/media/osfc2020/submissions/KS3XXB/resources/POWER9_support_in_coreboot_yEeop2W.pdf", "type": "related"}]}, {"guid": "08022e86-b911-5421-8d56-e05e9ebbc8eb", "code": "KMG73N", "id": 6508, "logo": null, "date": "2020-12-02T14:45:00+01:00", "start": "14:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6508-trusted-execution-environment-on-openbmc", "url": "https://cfp.osfc.io/osfc2020/talk/KMG73N/", "title": "Trusted Execution Environment on OpenBMC", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "Adding a Trusted Execution Environment (TEE) to OpenBMC will allow for a\r\nvariety of useful features in the realm of security. One current feature the\r\nBMC suffers from is the ability to securely store any information. A glaring\r\nexample of this is that IPMI user passwords are required (by the specification)\r\nto be available as plain-text to be used in RMCP+ authentication. But because\r\nthe BMC currently has no method of securing any secrets, it is impossible to\r\nsecurely encrypt those passwords. Adding a TEE using the ARM TrustZone\r\nextensions will allow this exact scenario to be fixed. But adding a TEE isn't\r\nso simple as just adding a new package to the OpenBMC Yocto build. This talk\r\ndives into the details of what hardware requirements, boot requirements, and\r\nother prerequisites are necessary to be able to securely store secrets on the\r\nBMC. In addition, it looks to future work that can be done with a TEE besides\r\nsimply keeping secrets.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "QASVGG", "name": "Vernon Mauery", "avatar": "https://cfp.osfc.io/media/avatars/QASVGG_rauxYbU.webp", "biography": "Vernon has been working on BMC firmware for Intel for nearly 10 years. Proprietary firmware at first, and  now OpenBMC. His main areas of focus are crypto, security, and bootloaders, but he also dabbles in Linux kernel, and other parts of OpenBMC as well. He is also one of the maintainers for the OpenBMC IPMI stack.", "public_name": "Vernon Mauery", "guid": "75ba54ed-0697-5da2-9a49-36ae6bb82c51", "url": "https://cfp.osfc.io/osfc2020/speaker/QASVGG/"}, {"code": "SVSWZA", "name": "Zhikui Ren", "avatar": null, "biography": "BMC Firmware engineer", "public_name": "Zhikui Ren", "guid": "638099cb-af39-5f39-88ed-82f7bb7b8059", "url": "https://cfp.osfc.io/osfc2020/speaker/SVSWZA/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/KMG73N/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/KMG73N/", "attachments": []}, {"guid": "00a90893-550e-5e03-81b1-a216b4c71905", "code": "ZSUPDV", "id": 6392, "logo": null, "date": "2020-12-02T16:15:00+01:00", "start": "16:15", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6392-amd-s-journey-towards-open-source-openbmc-firmware", "url": "https://cfp.osfc.io/osfc2020/talk/ZSUPDV/", "title": "AMD's Journey towards Open Source OpenBMC firmware", "subtitle": "", "track": null, "type": "short Talk", "language": "en", "abstract": "This session details AMD\u2019s journey to align with Industry direction of open source firmware stacks. It focuses on the collaborative efforts to enable OpenBMC on AMD customer reference boards and upstream support for AMD system interfaces to enable our customers, partners and BMC vendors. Finally, it highlights how AMD\u2019s OpenBMC engagement quickly enabled a large number of partners to open source AMD specific interfaces.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "RSCYCX", "name": "Supreeth Venkatesh", "avatar": "https://cfp.osfc.io/media/avatars/RSCYCX_mmn2Nvg.webp", "biography": "Supreeth Venkatesh works as a System Manageability Architect @ AMD.", "public_name": "Supreeth Venkatesh", "guid": "a69c132f-ea54-5307-a64c-07723247610b", "url": "https://cfp.osfc.io/osfc2020/speaker/RSCYCX/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/ZSUPDV/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/ZSUPDV/", "attachments": [{"title": "Presentation Slide Deck", "url": "/media/osfc2020/submissions/ZSUPDV/resources/OSFC_Presentation_AMDs_Journey_towards_Open_Source_0B69M2b.pdf", "type": "related"}]}, {"guid": "61fae4fa-a8cd-525b-b411-e1cccc99e6f9", "code": "TNTFYV", "id": 6479, "logo": null, "date": "2020-12-02T16:45:00+01:00", "start": "16:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6479-introducing-open-firmware-development-model-for-the-programmable-service-engine-s-in-intel-atom-x6000e-series", "url": "https://cfp.osfc.io/osfc2020/talk/TNTFYV/", "title": "Introducing open firmware development model for the Programmable Service Engine's in Intel Atom x6000E Series", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "The new Intel Atom x6000E series features a Programmable Service Engine (PSE) which supports out-of-band and in-band remote device management; enhanced I/O and storage options; and integrated 2.5 GbE time-sensitive networking. The PSE is based on ARM Cortex-M7. This presentation will focus on the mechanisms by which PSE firmware work with system boot firmware. In addition to that, we will be sharing about the different open source software tools to support the development, integration and design considerations between the PSE firmware and the rest of the system boot firmware. The key benefits from this session is to be able to learn about how to develop and customize the PSE firmware to provide value add for Intel platform.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "8DGVWR", "name": "Loo Tung Lun", "avatar": null, "biography": "Tung Lun is a senior BIOS lead at Intel Corporation focusing on BIOS and bootloader solutions design and power on activities on IOTG platforms. He had successfully brought up BIOS and bootloaders for Apollo Lake, Elkhart Lake, Kaby Lake, Coffee Lake and future Intel IOT platforms. Tung Lun also authored 5 US and WIPO patents. He is appointed as Intel Malaysia Site Innovators Technical and Cultural Advisor.", "public_name": "Loo Tung Lun", "guid": "2c5ee778-fd5e-5d0b-83b0-daf060863b1d", "url": "https://cfp.osfc.io/osfc2020/speaker/8DGVWR/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/TNTFYV/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/TNTFYV/", "attachments": []}, {"guid": "3381775b-620b-53a6-bcd5-8eeb383dad5b", "code": "8R9PKM", "id": 6481, "logo": null, "date": "2020-12-02T17:30:00+01:00", "start": "17:30", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6481-open-source-firmware-testing-with-contest", "url": "https://cfp.osfc.io/osfc2020/talk/8R9PKM/", "title": "Open Source firmware testing with ConTest", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "With the advancement of open source firmware projects, we need a reliable quality assurance process to automate the firmware level testing. In this talk we would like to talk about ConTest - a modular framework aimed at automating system testing workflows and how one can build board-specific testing infrastructure on top of it.\r\n\r\nConTest aims to provide maximum flexibility to the users and to validate as much as possible at the compile-time as well as at job submission time to avoid unnecessary operations. ConTest provides a modular and pluggable set of interfaces to define and handle operations like fetching information of the systems to run the tests on, testing the initial state of the test systems, implementing system-specific actions & measurements and logging the test progress as well as final results. On top of this, ConTest\u2019s test system uses the same framework for testing the correctness and reliability of its own plugins. This talk will also cover the existing plugins provided by upstream ConTest for different parts of the framework while outlining the process of creating the pluggable modules.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "EU9GLW", "name": "Christian Walter", "avatar": "https://cfp.osfc.io/media/avatars/EU9GLW_rJkUJ5F.webp", "biography": "Firmware Developer - Security Researcher", "public_name": "Christian Walter", "guid": "29771759-30b4-5a64-8e56-802baf4f0551", "url": "https://cfp.osfc.io/osfc2020/speaker/EU9GLW/"}, {"code": "GDGJHN", "name": "Andrea Barberio", "avatar": "https://cfp.osfc.io/media/avatars/GDGJHN_pOhPTQk.webp", "biography": "Production Engineer at Facebook, working on Open Source Firmware, booting and testing infrastructure.", "public_name": "Andrea Barberio", "guid": "740e4ec0-2c4b-5bb4-a8e6-5f0e8661c87c", "url": "https://cfp.osfc.io/osfc2020/speaker/GDGJHN/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/8R9PKM/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/8R9PKM/", "attachments": [{"title": "Slides", "url": "/media/osfc2020/submissions/8R9PKM/resources/Open_Source_Firmware_Testing_with_Contest_Rework.p_uhwCw95.pdf", "type": "related"}]}, {"guid": "e15c7224-c2e7-5b1b-b34a-433dc3e544c5", "code": "WF3VBD", "id": 6839, "logo": null, "date": "2020-12-02T19:00:00+01:00", "start": "19:00", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6839-keynote-9elements", "url": "https://cfp.osfc.io/osfc2020/talk/WF3VBD/", "title": "Keynote 9elements", "subtitle": "", "track": null, "type": "Co-Organizer Keynote", "language": "en", "abstract": "9elements Keynote", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "SPWA9R", "name": "Philipp Deppenwiese", "avatar": "https://cfp.osfc.io/media/avatars/SPWA9R_EGTEpTp.webp", "biography": "OSFC founder", "public_name": "Philipp Deppenwiese", "guid": "0ad69b2d-7d8e-5157-965c-1cdcd618d117", "url": "https://cfp.osfc.io/osfc2020/speaker/SPWA9R/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/WF3VBD/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/WF3VBD/", "attachments": []}, {"guid": "ed5b04d9-4072-512d-8c3c-45f460e0a981", "code": "TBSHA8", "id": 6275, "logo": null, "date": "2020-12-02T19:45:00+01:00", "start": "19:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6275-pure-open-source-on-an-amd-zen", "url": "https://cfp.osfc.io/osfc2020/talk/TBSHA8/", "title": "pure open source on an AMD Zen", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "This talk will discuss project X, which is aimed at eXcising binary blobs from the x86 part of Zen CPUs.  These parts start with fully functional memory, courtesy the ASP (which is a bit slow to get it done, but it gets it done). Getting memory working is just about the hardest part of bringing up a platform. Since the x86 is released from reset with memory working, things are easier.\r\n\r\nIn this talk I'll go over how we got to our goal, with both oreboot and coreboot, and why we might prefer one over the other.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "AQF8VK", "name": "ronald g. minnich", "avatar": "https://cfp.osfc.io/media/avatars/AQF8VK_LaKUjzj.webp", "biography": "Ron has worked in free and open source for decades, and, along the way, started linuxbios, helped found coreboot, created u-root, and helped found linuxboot. He's also very active in the plan 9 and other kernel communities.", "public_name": "ronald g. minnich", "guid": "e41e411b-a0e5-5983-ac2b-9364a707a0b5", "url": "https://cfp.osfc.io/osfc2020/speaker/AQF8VK/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/TBSHA8/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/TBSHA8/", "attachments": []}, {"guid": "a5a01120-9aea-5ef4-b2dd-62c328e322fe", "code": "TXRLWR", "id": 6247, "logo": null, "date": "2020-12-02T21:15:00+01:00", "start": "21:15", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6247-linuxboot-on-hpe-platform-where-do-we-stand", "url": "https://cfp.osfc.io/osfc2020/talk/TXRLWR/", "title": "Linuxboot on HPE platform where do we stand", "subtitle": "", "track": null, "type": "short Talk", "language": "en", "abstract": "During this talk, I will introduce my ongoing work to port linuxboot on HPE platforms. The various strategies taken, the challenges we face and how we will address them. A live demo of linuxboot on HPE platform will be performed.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "NQXLUJ", "name": "Jean-Marie Verdun", "avatar": "https://cfp.osfc.io/media/avatars/NQXLUJ_Pr9EsoP.webp", "biography": "Jean-Marie Verdun is Senior Strategist Open Platform at HPE since december 2019. Before joining HPE, he created his own company in 2006 dedicated to energy management in IT and Open Hardware platforms that he successfully sold in 2018. He actively participated to the early stage of linuxboot and is a long term contributor to various open source tools like FreeCAD used to design Open Hardware platforms.", "public_name": "Jean-Marie Verdun", "guid": "740cc826-fcf0-5c4e-bd75-2f165b2b4644", "url": "https://cfp.osfc.io/osfc2020/speaker/NQXLUJ/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/TXRLWR/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/TXRLWR/", "attachments": []}, {"guid": "202cccb0-336f-5913-88a0-5494cbf212b1", "code": "GUTWWC", "id": 6358, "logo": null, "date": "2020-12-02T21:45:00+01:00", "start": "21:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6358-trenchboot-drtm-features-for-amd-platforms", "url": "https://cfp.osfc.io/osfc2020/talk/GUTWWC/", "title": "TrenchBoot DRTM features for AMD platforms", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "TrenchBoot is a young open source project aiming at security and integrity of\r\nthe boot process leveraging advanced silicon security features, like Intel\r\nTrusted Execution Technology (TXT) and AMD Secure Startup. It integrates with\r\nopen source projects like GRUB2 and Linux to perform a measured launch of the\r\noperating system software, also called Dynamic Root of Trust for Measurement.\r\nThe presentation will describe the progress of the project, what new features\r\nhas been added and what we managed to achieve so far.\r\n\r\nIn particular 3mdeb has been developing support for the AMD Secure Startup.\r\nSince last year we managed to push the project even further thanks to the\r\nfounding from NLnet Foundation, NGI Zero PET grant. The most key changes\r\nintroduced into the project are the DRTM event log and the possibility to boot\r\nXen Hypervisor with measured launch. If you want to hear more what is on our\r\nroadmap and what problems we are still trying to solve, this presentation is\r\nfor you.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "CF97CT", "name": "Micha\u0142 \u017bygowski", "avatar": "https://cfp.osfc.io/media/avatars/CF97CT_VBWxUC0.webp", "biography": "Firmware Engineer with networking background. Feels comfortable with low-level development using C/C++ and assembly. Interested in advanced hardware features, security and coreboot. Core developer of coreboot. Maintainer of Braswell SoC, PC Engines, Protectli and Libretrend platforms. Creating open source firmware solution in 3mdeb Embedded Systems Consulting for 3 years. Active speaker at various open source firmware related conferences: Open Source Firmware Conference 2018 and 2019, Xen Developer And Design Summit 2020 and others.", "public_name": "Micha\u0142 \u017bygowski", "guid": "81e11dcf-e885-58b5-b543-79939b025ac7", "url": "https://cfp.osfc.io/osfc2020/speaker/CF97CT/"}, {"code": "D8FJUY", "name": "Piotr Kr\u00f3l", "avatar": "https://cfp.osfc.io/media/avatars/D8FJUY_clDzu23.webp", "biography": "Piotr Kr\u00f3l is a multi-disciplinary executive running several companies in the embedded systems and semiconductor industries, including 3mdeb, LPN Plant, and Vitro Technology. Prior to starting his own companies, he worked as an engineer for Intel for over seven years. Piotr is also an open-source evangelist, active in the Open Source Firmware (e.g. coreboot) and Linux communities.", "public_name": "Piotr Kr\u00f3l", "guid": "795111ac-becf-54fb-96a3-f96c3de991ba", "url": "https://cfp.osfc.io/osfc2020/speaker/D8FJUY/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/GUTWWC/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/GUTWWC/", "attachments": [{"title": "TrenchBoot DRTM features for AMD platforms", "url": "/media/osfc2020/submissions/GUTWWC/resources/TrenchBoot_DRTM_features_for_AMD_platforms_uGl3cGy.pdf", "type": "related"}]}, {"guid": "547f10b2-b76e-5bb3-bc37-b3c20e73e40b", "code": "UYQSG9", "id": 6277, "logo": null, "date": "2020-12-03T00:00:00+01:00", "start": "00:00", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6277-oreboot-status-report", "url": "https://cfp.osfc.io/osfc2020/talk/UYQSG9/", "title": "oreboot status report", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "oreboot is a downstream fork of coreboot, with all C removed, and all code written in Rust. Since we spoke of oreboot a year ago, a lot has happened, and we want to go over the status.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "AQF8VK", "name": "ronald g. minnich", "avatar": "https://cfp.osfc.io/media/avatars/AQF8VK_LaKUjzj.webp", "biography": "Ron has worked in free and open source for decades, and, along the way, started linuxbios, helped found coreboot, created u-root, and helped found linuxboot. He's also very active in the plan 9 and other kernel communities.", "public_name": "ronald g. minnich", "guid": "e41e411b-a0e5-5983-ac2b-9364a707a0b5", "url": "https://cfp.osfc.io/osfc2020/speaker/AQF8VK/"}, {"code": "XXVHBR", "name": "Ryan O'Leary", "avatar": "https://cfp.osfc.io/media/avatars/XXVHBR_ujWNmRR.webp", "biography": null, "public_name": "Ryan O'Leary", "guid": "c491cd52-9e0c-5b5d-813e-385c5a52d49e", "url": "https://cfp.osfc.io/osfc2020/speaker/XXVHBR/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/UYQSG9/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/UYQSG9/", "attachments": []}, {"guid": "39b97387-ba8d-5a19-ad13-a75ea91bf786", "code": "SXYUQD", "id": 6506, "logo": null, "date": "2020-12-03T00:45:00+01:00", "start": "00:45", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6506-zephyr-as-an-open-platform-for-google-s-embedded-controllers", "url": "https://cfp.osfc.io/osfc2020/talk/SXYUQD/", "title": "Zephyr as an open platform for Google's embedded controllers", "subtitle": "", "track": null, "type": "short Talk", "language": "en", "abstract": "Since 2012, Google has developed an open source embedded controller for Chromebooks. Recently, Google has committed to use Zephyr OS in future embedded controller designs. We discuss the benefits of moving to a community-driven RTOS instead of using our custom kernel. We also discuss Google\u2019s plans to contribute to Zephyr OS.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "H3RYF8", "name": "Jack Rosenthal", "avatar": "https://cfp.osfc.io/media/avatars/H3RYF8_cpW3DeM.webp", "biography": "Jack works at Google on the Chrome OS team on open source firmware projects. Jack has a BS and MS in Computer Science from Colorado School of Mines.", "public_name": "Jack Rosenthal", "guid": "700ae79c-9e66-52e3-94b3-2d67ca73881d", "url": "https://cfp.osfc.io/osfc2020/speaker/H3RYF8/"}, {"code": "ZZDUXC", "name": "Paul Fagerburg", "avatar": "https://cfp.osfc.io/media/avatars/ZZDUXC_BWdC5zz.webp", "biography": "Paul has been at Google for about 1.5 years, working on embedded firmware in ChromeOS. Prior to joining Google, Paul worked at a variety of large and small companies in areas including medical devices, commercial aviation, and military systems. Paul holds a BS in Computer Science and an MS in Electrical Engineering.", "public_name": "Paul Fagerburg", "guid": "3b7e4de9-2c3a-5b0f-a44c-43dae34fdad0", "url": "https://cfp.osfc.io/osfc2020/speaker/ZZDUXC/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/SXYUQD/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/SXYUQD/", "attachments": [{"title": "Slides", "url": "/media/osfc2020/submissions/SXYUQD/resources/osfc_2020_presentation_URekIol.pdf", "type": "related"}]}], "Session Area": [{"guid": "c73fb0c9-a8bd-56d3-a187-f5341f51bf57", "code": "7HHQ7L", "id": 6260, "logo": null, "date": "2020-12-02T14:00:00+01:00", "start": "14:00", "duration": "00:40", "room": "Session Area", "slug": "osfc2020-6260-how-to-write-a-fwupd-plugin", "url": "https://cfp.osfc.io/osfc2020/talk/7HHQ7L/", "title": "How to write a fwupd plugin", "subtitle": "", "track": null, "type": "Session", "language": "en", "abstract": "The fwupd project is an established open source project being shipped by default on almost every Linux distribution. It is responsible for deploying over 18 million firmware updates. The project supports dozens of existing standardized update protocols like ATA, NVMe, DFU, UpdateCapsule, and also supports many vendor-specific protocols from the likes of Wacom, Logitech and Synaptics. This presentation will explain how the daemon decides to offer a firmware update, and also the low level detail of the flashing process. Tasks like switching the device to and from bootloader mode will be covered, as will how to parse a custom firmware image format.\r\n\r\nSome familiarity with how firmware is deployed would be advantageous, but detailed knowledge of  how to write GLib C code is not required, but would be helpful. In the presentation I\u2019ll be showing how to write a fictitious plugin for some toy hardware, and show how to debug and test the low level vfuncs before installing the plugin and using it as part of the installed daemon.\r\n\r\nThis talk would be really helpful for any people interested in porting custom flashing code to the generic fwupd infrastructure. It would be also interesting for anyone who wants to start building and testing the existing plugins from the development branch.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "DMZWKT", "name": "Richard Hughes", "avatar": "https://cfp.osfc.io/media/avatars/DMZWKT_WE04WA1.webp", "biography": "Richard has over 15 years of experience developing open source software. He is the maintainer of fwupd, the LVFS, GNOME Software, AppStream-glib, PackageKit, gnome-packagekit, gnome-power-manager, gnome-color-manager, colord, and UPower and also contributes to many other projects and opensource standards.\r\n\r\nRichard graduated in 2007 from the University of Surrey with a Masters in Electronics Engineering. He now works as a principle engineer for Red Hat. Richard's outside interests include taking photos, eating good food and looking after his two daughters.", "public_name": "Richard Hughes", "guid": "4a3a0291-f12b-5321-a6ae-997afd778c2c", "url": "https://cfp.osfc.io/osfc2020/speaker/DMZWKT/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/7HHQ7L/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/7HHQ7L/", "attachments": []}]}}, {"index": 3, "date": "2020-12-03", "day_start": "2020-12-03T04:00:00+01:00", "day_end": "2020-12-04T03:59:00+01:00", "rooms": {"Main Stage": [{"guid": "a65df58d-c735-58cb-bb49-9741b10d4ca5", "code": "KB3H9V", "id": 6626, "logo": null, "date": "2020-12-03T14:00:00+01:00", "start": "14:00", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6626-arm-systemready-and-the-uefi-firmware-ecosystem", "url": "https://cfp.osfc.io/osfc2020/talk/KB3H9V/", "title": "Arm SystemReady and the UEFI firmware ecosystem", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "Arm SystemReady is a new program bringing a level of consistency across a broad range of Arm-based devices in the cloud, in the network and in high-performance IoT (HPIoT) endpoints. It includes new set of standards and a compliance certification program, with the goal of ensuring that Arm systems \"Just Work\" with standard off-the-shelf operating systems and hypervisors. The program is based on a set of minimum hardware and firmware requirements. Firmware standards such as UEFI, ACPI, and SMBIOS are key elements in these requirements. This talk introduces the Arm SystemReady program, the Base Boot Requirements (BBR) and the Base Boot Security Requirements (BBSR) firmware specifications. The session show-cases enablement efforts for devices under this program, using open source firmware projects such as TianoCore and U-Boot. It also highlights open source firmware test suites used in SystemReady certification.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "3DPRVF", "name": "Samer El-Haj-Mahmoud", "avatar": "https://cfp.osfc.io/media/avatars/3DPRVF_hYlNgYH.webp", "biography": "Samer El-Haj-Mahmoud is a Sr. Principal Architect at Arm, working on Arm SystemReady and firmware architecture. He is an active contributor to industry standards such as UEFI, ACPI, CXL, and DMTF Redfish, as well as the TianoCore open source firmware project.", "public_name": "Samer El-Haj-Mahmoud", "guid": "e3cd07b5-e06c-563c-96b4-438da47354a4", "url": "https://cfp.osfc.io/osfc2020/speaker/3DPRVF/"}, {"code": "8FY7QG", "name": "Dong Wei", "avatar": "https://cfp.osfc.io/media/avatars/8FY7QG_84noD1j.webp", "biography": "Dong Wei is an Arm Fellow and is responsible for the Arm SystemReady program and the related standards. He is the Chief Executive of the UEFI Forum, and a Board member at PCI SIG and CXL Consortium.", "public_name": "Dong Wei", "guid": "6feb3ccf-c47d-5d9f-966e-707c95d7302e", "url": "https://cfp.osfc.io/osfc2020/speaker/8FY7QG/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/KB3H9V/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/KB3H9V/", "attachments": [{"title": "Arm SystemReady - Presentation PDF", "url": "/media/osfc2020/submissions/KB3H9V/resources/ArmSystemReady_OSFC2020_9q9i7OA.pdf", "type": "related"}]}, {"guid": "008c77fc-6a89-5806-939f-be591ef1ef73", "code": "7SX7ZC", "id": 6509, "logo": null, "date": "2020-12-03T14:45:00+01:00", "start": "14:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6509-agile-hardware-leveraging-open-source-designs", "url": "https://cfp.osfc.io/osfc2020/talk/7SX7ZC/", "title": "Agile Hardware Leveraging Open Source Designs", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "When developing an IoT product, the most useful feedback comes when the end user has the product in their hands and when the product is paired with its intended user experience. Unfortunately, traditional approaches to hardware development don\u2019t get to that step until late in the development process, making any changes expensive and time-consuming.\r\n\r\nFor example, just turning on an LED remotely requires a user experience both in the interaction with the physical product and with the remote interface. The electronics at minimum include a microcontroller, a connection path to the internet, an LED, and some way to provide power to it all. Then firmware on the physical device and software on the server and remote interface on a phone or computer must all interact with one another to deliver the necessary data and commands. The user experience can easily feel disjointed when all of these pieces are not considered and designed simultaneously.\r\n\r\nIn this talk, you\u2019ll learn how combining agile development practices with open source and/or reference designs can change the narrative on how quickly custom IoT solutions can be developed. Ultimately, this approach provides a higher degree of confidence when the time comes to spend thousands (or tens of thousands) of dollars on hardware.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "H9KCDK", "name": "Adam Drewery", "avatar": "https://cfp.osfc.io/media/avatars/H9KCDK_2ZMn7KZ.webp", "biography": "As an Embedded/Electrical Engineer, my focus is primarily on the physical electronics within the IoT solutions we design. I particularly enjoy designing and advising on PCB and wire harness design. This ranges from designing and prototyping circuits, schematic capture, PCB layout, interfacing with vendors throughout manufacturing, and supporting firmware and software design. I also enjoy working on embedded C/C++ firmware when I get the opportunity.", "public_name": "Adam Drewery", "guid": "d739a5f8-639c-524b-baa4-0830ccff3933", "url": "https://cfp.osfc.io/osfc2020/speaker/H9KCDK/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/7SX7ZC/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/7SX7ZC/", "attachments": [{"title": "PDF of slides", "url": "/media/osfc2020/submissions/7SX7ZC/resources/Agile_HW_Open_Source_Hardware_OBkG41z.pdf", "type": "related"}]}, {"guid": "2a1fa68d-cad7-54f5-b329-ead4838ab7c9", "code": "MSCLS7", "id": 6511, "logo": null, "date": "2020-12-03T16:15:00+01:00", "start": "16:15", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6511-the-delicate-disadvantage-of-reverse-engineering", "url": "https://cfp.osfc.io/osfc2020/talk/MSCLS7/", "title": "The delicate disadvantage of Reverse-Engineering", "subtitle": "", "track": null, "type": "short Talk", "language": "en", "abstract": "I started my first reverse-engineering in 1995: NetBIOS \"Network Neighbourhood\" for Samba 1.9.16p5.  I quickly moved on to NT Domains 3.51: \"Welcome to the SAMBA Domain\" and helped bridge the yawning chasm between UNIX and Windows.  By 2003-2004 I had moved on to the Xanadux Project, owned 9 HTC WINCE Smartphones and successfully reverse-engineered Linux onto two of them.\r\n\r\nThen Android happened.  only a few years later, mjg59 published a review of devices and found a 98% GPL Violations rate.\r\n\r\nThis brief talk invites skilled dedicated Libre/Open engineers to consider this rather delicate and simple question: why are we doing this?  Why are we spending vast amounts of time and effort - mostly without being paid - taking 3 months to 3 years to reverse-engineer hardware that was a design concept at least 12 to 18 months before it first hit the shelves?", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "TMN977", "name": "Luke Leighton", "avatar": null, "biography": "Luke Leighton specialises in Libre Ethical Technology.  His first reverse-engineering was the Windows Network Neighbourhood, and the most recent was the DDR3 DRAM initialisation sequence for the RK3388.  He now designs eco-conscious products and is currently the lead of the Libre-SOC hybrid 3D CPU / GPU SoC.", "public_name": "Luke Leighton", "guid": "ba4bf002-b752-5c78-95c4-207581fe1845", "url": "https://cfp.osfc.io/osfc2020/speaker/TMN977/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/MSCLS7/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/MSCLS7/", "attachments": []}, {"guid": "05bd2abb-747e-5edb-8d90-1f8a241957de", "code": "HANBN8", "id": 6510, "logo": null, "date": "2020-12-03T16:45:00+01:00", "start": "16:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6510-short-circuit-iot-development-with-nerves", "url": "https://cfp.osfc.io/osfc2020/talk/HANBN8/", "title": "Short Circuit IoT Development with Nerves", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "Internet of Things projects are challenging because they contain comical exaggerations of the pitfalls you find in distributed systems. In the case of developing a Solar Microgrid Controller, like I did, you'll face bonus challenges like, \"When will the internet be in town?\", \"How do I create clean architecture when the hardware is shifting under my feet?\", and \"How do I quickly pivot to a different peripheral?\"\r\n\r\nIn this talk, I'll share some of the ways our team leveraged Elixir, Nerves, and NervesHub to build robust Solar Microgrid Controller firmware. I'll also share development patterns and practices that you can take back to your next firmware project.\r\n\r\nBecause micro grids can be deployed in remote locations without reliable Internet access, data minimization is a must. We'll talk about the tools you can use to provide full utility data when low bandwidth internet might not be in town until next month.\r\n\r\nNext, we'll look at a couple of different ways Nerves and Elixir can keep our software tidy by decoupling the firmware from the hardware.\r\n\r\nWe\u2019ll wrap up by looking at hardware. While commodity hardware like BeagleBone or Raspberry Pi are great for prototyping, they're far too expensive for mass production. For this project, we built our own custom hardware and ported Nerves to it. We'll take a look at some of the considerations you might make if you develop for novel hardware, and what you might do to bring your next project to life with Nerves.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "SABENX", "name": "Dan Lindeman", "avatar": "https://cfp.osfc.io/media/avatars/SABENX_mfvGlWP.webp", "biography": "An educator-turned-developer, Daniel got his start in the software industry testing embedded automotive infotainment systems for Johnson Controls in 2014. While he was there, Daniel created new components for and maintained the company's Python automated testing framework. Daniel held other QA-related roles until becoming a Software Engineer at Blue Medora in 2016. While at Blue Medora, he served as a project lead, a platform extensions software engineer, and a recruitment and outreach advocate. In 2017, Daniel joined Spantree, where he worked on planning and optimization problems, data pipelines, and search solutions.", "public_name": "Dan Lindeman", "guid": "bede8903-d26e-57d3-b778-2f06e7b3800b", "url": "https://cfp.osfc.io/osfc2020/speaker/SABENX/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/HANBN8/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/HANBN8/", "attachments": [{"title": "Slides", "url": "/media/osfc2020/submissions/HANBN8/resources/Short_Circuit_IoT_Development_1_5wtzvPl.pdf", "type": "related"}]}, {"guid": "a007cadb-e8e8-5d57-a392-b53e60fdeee2", "code": "3LMXNB", "id": 6517, "logo": null, "date": "2020-12-03T17:30:00+01:00", "start": "17:30", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6517-letter-from-a-manager-how-to-convince-me-open-source-firmware-is-a-good-idea", "url": "https://cfp.osfc.io/osfc2020/talk/3LMXNB/", "title": "Letter from a Manager: How to Convince Me Open Source Firmware is a Good Idea", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "I don't have to go through them \u2014 you've heard all the reasons why your company can't adopt open source firmware technology.  Sure, you and I know that they aren't great reasons, but how do you provide a more compelling argument for open source firmware?  \r\n\r\nAs the Director of Engineering for a large IoT consultancy, I routinely bridge the gap between business stakeholders and engineering.  I've spent a lot of time thinking deeply about why open source is the best business choice, and how to communicate these reasons to business stakeholders both internally, and within many of our largest clients.  \r\n\r\nWe have to face it, the fate of the open source firmware community depends on buy-in from stakeholders in an industry that differs drastically from the college dropout CS student-turned-CEO world of web development.  We need to present strong, cohesive, business arguments in order to bring our open source vision to life. I'll share what's made me successful in this domain, with the hope that others can take it and convince more companies to adopt open source firmware.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "JWFLKY", "name": "Jeff McGehee", "avatar": "https://cfp.osfc.io/media/avatars/JWFLKY_7326b2l.webp", "biography": "As Very\u2019s Director of Engineering, Jeff leverages his broad technical expertise to architect systems that involve intelligent machines within client projects.\r\n\r\nBefore graduating to his Director of Engineering role, Jeff was a regular contributor to the OTA (over the air) firmware update server NervesHub, applying his learnings from Very's IoT projects. He also served as a machine learning and hardware solutions leader.\r\n\r\nBefore joining Very, Jeff was a research and design engineer at Variable, Inc., where he developed proprietary mathematical models for accurate color measurement, set up a scientific analysis Python environment with custom modules for internal company use, and built and deployed internal tools that allow non-technical workers to apply machine learning models.", "public_name": "Jeff McGehee", "guid": "19b914d6-ccff-5f63-81d1-1b2b5d0b3f5c", "url": "https://cfp.osfc.io/osfc2020/speaker/JWFLKY/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/3LMXNB/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/3LMXNB/", "attachments": [{"title": "Slides", "url": "/media/osfc2020/submissions/3LMXNB/resources/Letter_From_a_Manager_9XkY8DG.pdf", "type": "related"}, {"title": "Slides", "url": "/media/osfc2020/submissions/3LMXNB/resources/Letter_From_a_Manager_yePT05o.pdf", "type": "related"}]}, {"guid": "9c09b6bf-69f8-5f4e-b4e0-9291fb0423fd", "code": "SLFJTN", "id": 6643, "logo": null, "date": "2020-12-03T19:00:00+01:00", "start": "19:00", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6643-enabling-rust-for-uefi-firmware", "url": "https://cfp.osfc.io/osfc2020/talk/SLFJTN/", "title": "Enabling Rust for UEFI Firmware", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "This talk will introduce some work in progress activities to enable Rust in EDK II.\r\nThe session will include use cases for Rust in EDK II, advantages of Rust when applied to firmware components, limitations in firmware environments and the types of issues that can be avoided by leveraging language based security in EDK II. Memory safety issues contributed to approximately 70% of recent security issues in software (per MS). In firmware, over 50% of reported issues in EDK II open source are related to memory safety. Future looking directions will also be shared.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "YMDVAF", "name": "Jiewen Yao", "avatar": "https://cfp.osfc.io/media/avatars/YMDVAF_I9LkqOb.webp", "biography": "Jiewen Yao is a principal engineer in the Intel Architecture, Graphics, and Software Group. He has been engaged as a firmware developer for over 15 years. He is a member of the UEFI Security sub team, and the TCG PC Client sub working group. He is the maintainer of tianocore/EDKII security package and crypto package.", "public_name": "Jiewen Yao", "guid": "f96d68b4-8a3d-512d-8423-ddf5debb1001", "url": "https://cfp.osfc.io/osfc2020/speaker/YMDVAF/"}, {"code": "PSYZCP", "name": "Vincent Zimmer", "avatar": "https://cfp.osfc.io/media/avatars/PSYZCP_d01Svai.webp", "biography": "Vincent is an engineer working on firmware in the Pacific Northwest. He has been on the EFI team at Intel since the late 90's.", "public_name": "Vincent Zimmer", "guid": "4f3d16a6-859d-5a1f-8b4d-40781bc610a2", "url": "https://cfp.osfc.io/osfc2020/speaker/PSYZCP/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/SLFJTN/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/SLFJTN/", "attachments": [{"title": "Presentation", "url": "/media/osfc2020/submissions/SLFJTN/resources/OSFC2020_Rust_EFI_Yao_Zimmer_NDK4Dme.pdf", "type": "related"}]}, {"guid": "e4b446fa-226a-5ccd-a9ba-55b7a71b2332", "code": "BFTSBT", "id": 6615, "logo": null, "date": "2020-12-03T19:45:00+01:00", "start": "19:45", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6615-webboot", "url": "https://cfp.osfc.io/osfc2020/talk/BFTSBT/", "title": "Webboot", "subtitle": "", "track": null, "type": "short Talk", "language": "en", "abstract": "`webboot` is an open-source tool to boot live ISO images from the web. Users have the option to set up a wifi connection and download a new ISO, or use a previously downloaded one. Once the ISO exists locally, _Webboot_ locates its kernel and initrd, determines the necessary kernel parameters to boot, and uses kexec to boot into the new distribution. _Webboot_ was introduced at last year\u2019s OSFC, but several major changes, including the addition of a text-based UI and a cache of previously downloaded ISOs, have significantly increased the tool\u2019s usability.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "JRPZFZ", "name": "Gabriel Biren", "avatar": "https://cfp.osfc.io/media/avatars/JRPZFZ_h9FNbYi.webp", "biography": "Gabriel Biren is a student at UCLA, currently working on a Master's in Computer Science.", "public_name": "Gabriel Biren", "guid": "c5c8971a-17a8-5d3c-b6de-346261517e8a", "url": "https://cfp.osfc.io/osfc2020/speaker/JRPZFZ/"}, {"code": "9JRV3P", "name": "Shiyu Xu", "avatar": "https://cfp.osfc.io/media/avatars/9JRV3P_kJFTJY7.webp", "biography": "A student at USC, currently working on a Master's in Computer Science.", "public_name": "Shiyu Xu", "guid": "74b730d6-5a34-5560-9072-52eef422d86d", "url": "https://cfp.osfc.io/osfc2020/speaker/9JRV3P/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/BFTSBT/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/BFTSBT/", "attachments": [{"title": "Slides", "url": "/media/osfc2020/submissions/BFTSBT/resources/Webboot_Slides_aGKJuXY.pdf", "type": "related"}]}, {"guid": "96a5b36b-02ff-5561-a077-72f65d47a06f", "code": "YWWRVG", "id": 6644, "logo": null, "date": "2020-12-03T21:15:00+01:00", "start": "21:15", "duration": "00:15", "room": "Main Stage", "slug": "osfc2020-6644-seabios-as-csm-on-physical-hardware", "url": "https://cfp.osfc.io/osfc2020/talk/YWWRVG/", "title": "SeaBIOS as CSM on physical hardware", "subtitle": "", "track": null, "type": "short Talk", "language": "en", "abstract": "*Time is show in CET*\r\nSeaBIOS is generally used as CSM on QEMU to boot legacy OS with UEFI BIOS. However, to achieve the same goal on physical hardware is not straightforward and we're facing challenges. We're able to overcome all these challenges and successfully boot legacy OS almost  from all kinds of medias(SATA, NVMe, PXE, etc,) by applying various extension and subtle changes on physical server computers. In this presentation, we'll highlight the changes and extensions we made on SeaBIOS. For example,  PCI rom BEV(e.g. iPXE) boot support, 64bit MMIO support by BIOS provided SMM, >128K pci oprom memory support, boot event log sent to BIOS(by SMI), VGA console to Serial console redirection, map hard drives dynamically to support more than 2 hard drives, timer/clock fix to support pci rom dispatching, and so on.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "KANXHE", "name": "Bin Gao", "avatar": null, "biography": "AWS BIOS engineer.", "public_name": "Bin Gao", "guid": "9f292e78-e077-5af1-9848-3797ffdf9c22", "url": "https://cfp.osfc.io/osfc2020/speaker/KANXHE/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/YWWRVG/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/YWWRVG/", "attachments": []}, {"guid": "5da83f3a-342e-5cfc-8fee-f80ea9b009fe", "code": "CRKZB8", "id": 6485, "logo": null, "date": "2020-12-03T21:45:00+01:00", "start": "21:45", "duration": "00:30", "room": "Main Stage", "slug": "osfc2020-6485-virtual-firmware-for-intel-trust-domain-extensions", "url": "https://cfp.osfc.io/osfc2020/talk/CRKZB8/", "title": "Virtual Firmware for Intel\u00ae Trust Domain Extensions", "subtitle": "", "track": null, "type": "long Talk", "language": "en", "abstract": "Intel\u00ae Trust Domain Extensions (Intel\u00ae TDX) introduce architectural elements to help deploy hardware-isolated, virtual machines (VMs) called trust domains (TDs). Intel TDX is designed to isolate VMs from the virtual-machine manager (VMM)/hypervisor and any other non-TD software on the platform to protect TDs from a broad range of software. \r\nThis presentation introduces the architecture for TDX Virtual Firmware (TDVF), and the firmware reference implementation available in open source. The talk covers how TDVF runs from the TD reset vector, records runtime measurements, manages private memory, interacts with the Intel TDX module in Secure Arbitration Mode (SEAM), and loads the operating system (OS). \r\n\r\nThe audience will learn the role TDVF plays in setting up and protecting a TD and how Intel TDX establishes a chain of trust from reset vector to OS handoff.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "YMDVAF", "name": "Jiewen Yao", "avatar": "https://cfp.osfc.io/media/avatars/YMDVAF_I9LkqOb.webp", "biography": "Jiewen Yao is a principal engineer in the Intel Architecture, Graphics, and Software Group. He has been engaged as a firmware developer for over 15 years. He is a member of the UEFI Security sub team, and the TCG PC Client sub working group. He is the maintainer of tianocore/EDKII security package and crypto package.", "public_name": "Jiewen Yao", "guid": "f96d68b4-8a3d-512d-8423-ddf5debb1001", "url": "https://cfp.osfc.io/osfc2020/speaker/YMDVAF/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/CRKZB8/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/CRKZB8/", "attachments": [{"title": "Presentation", "url": "/media/osfc2020/submissions/CRKZB8/resources/Virtual_Firmware_for_Intel_Trust_Domain_Extensions_FhBmbgK.pdf", "type": "related"}]}], "Session Area": [{"guid": "b4b55942-3884-51f1-ac3a-d63b81065d32", "code": "AS7EZR", "id": 6633, "logo": null, "date": "2020-12-03T18:20:00+01:00", "start": "18:20", "duration": "00:40", "room": "Session Area", "slug": "osfc2020-6633-platform-configuration-utility-for-intel-platforms", "url": "https://cfp.osfc.io/osfc2020/talk/AS7EZR/", "title": "Platform configuration Utility for Intel Platforms", "subtitle": "", "track": null, "type": "Session", "language": "en", "abstract": "Currently bootloader systems on Intel platforms requires rebuilding of firmware image to change any Platform parameters through static configurations. Using Platform configuration utilities, we want to provide an OS agnostic GUI solution in payload stage, where the users would be able to configure platform settings on runtime on devices directly. This would largely simplify development/validation/debug process, make it faster, user friendly and  provide user much more flexibility. With this on-the-fly functionality, we will able to provide more control to the user without the need for building & flashing the firmware images.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "ARCGMX", "name": "Tan Lean Sheng", "avatar": "https://cfp.osfc.io/media/avatars/ARCGMX_D0T0b2M.webp", "biography": "Sheng is a firmware engineer working on coreboot and Slim Bootloader projects after joining Intel in 2017. Since then he has developed a keen interest in firmware development and actively involved in open source firmware initiatives . Outside of work Sheng is a tech geek and enjoys playing Frisbee.", "public_name": "Tan Lean Sheng", "guid": "e408eb70-f2c2-57f7-99ac-885c37aa8342", "url": "https://cfp.osfc.io/osfc2020/speaker/ARCGMX/"}, {"code": "BJ73UX", "name": "Aamir Bohra", "avatar": "https://cfp.osfc.io/media/avatars/BJ73UX_4MNxGo2.webp", "biography": "Aamir works as Coreboot FW Engineer at Intel. He is been working on chromebook firmware SoC code development and board bring ups for new generation Intel SoCs . Prior to this , he was working as UEFI BIOS Engineer and was responsible for enabling windows based designs.", "public_name": "Aamir Bohra", "guid": "408c4e5c-ad3b-5ef5-b1f1-ff5b18688954", "url": "https://cfp.osfc.io/osfc2020/speaker/BJ73UX/"}, {"code": "NEDCUT", "name": "Maulik", "avatar": "https://cfp.osfc.io/media/avatars/NEDCUT_5QCTo7J.webp", "biography": null, "public_name": "Maulik", "guid": "135c6c5d-8d13-554c-84e2-8fd46b0b8b72", "url": "https://cfp.osfc.io/osfc2020/speaker/NEDCUT/"}, {"code": "3VMTMF", "name": "Praveen", "avatar": null, "biography": null, "public_name": "Praveen", "guid": "aeabae70-bd45-508f-b7f4-39ecf9fe0247", "url": "https://cfp.osfc.io/osfc2020/speaker/3VMTMF/"}, {"code": "AREPFW", "name": "Ronak Kanabar", "avatar": null, "biography": null, "public_name": "Ronak Kanabar", "guid": "bb51b9f3-3d88-5053-ab99-82cc18d0afb4", "url": "https://cfp.osfc.io/osfc2020/speaker/AREPFW/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/AS7EZR/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/AS7EZR/", "attachments": []}, {"guid": "13dc7124-f6eb-5c3c-8b4a-e14d922ec9d3", "code": "VUNDSC", "id": 6302, "logo": null, "date": "2020-12-03T20:15:00+01:00", "start": "20:15", "duration": "00:40", "room": "Session Area", "slug": "osfc2020-6302-standardized-payload-interface", "url": "https://cfp.osfc.io/osfc2020/talk/VUNDSC/", "title": "Standardized payload interface", "subtitle": "", "track": null, "type": "Session", "language": "en", "abstract": "The design methodology of viewing system firmware functionality as made up of two distinct phases \u2013 initialization and OS boot logic is gaining traction resulting in new implementations of system firmware. This approach calls for modular phases with an initialization phase (bootloader) which completes the system initialization and gets the hardware to a usable state and then a payload phase. The payload can provide/implement many different functionalities including the media and file system drivers, operating system boot, diagnostics, etc.  \r\n\r\nThis topic presents the idea of a standardized interface that the bootloader exposes with the design goal of a platform independent payload.", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "S8HJE9", "name": "Guo Dong", "avatar": null, "biography": "Guo worked on Linux 3 years before he joined in Intel UEFI team (aka Tiano team). After 8 years UEFI engineering development he moved to bootloader firmware development from 2015. He knows well about UEFI EDKII, especially its security features including TCG Trusted Platform Module (TPM), secure boot, user identification (UID), SMM variables, etc. \r\nHe enabled coreboot on several Intel platforms before he created Slim Bootloader with team members. He is also a maintainer for the open sourced UEFI payload in EDKII.", "public_name": "Guo Dong", "guid": "a5d8b686-4d78-5f3d-ae6a-2c08b844037e", "url": "https://cfp.osfc.io/osfc2020/speaker/S8HJE9/"}, {"code": "HC9SX8", "name": "Ravi Rangarajan", "avatar": null, "biography": null, "public_name": "Ravi Rangarajan", "guid": "a2afaa0f-5a30-5e73-ad6e-9d89cd8ba279", "url": "https://cfp.osfc.io/osfc2020/speaker/HC9SX8/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/VUNDSC/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/VUNDSC/", "attachments": []}, {"guid": "aeeae1a6-851d-588e-b71c-06f6ef85670b", "code": "ALPB3Y", "id": 7531, "logo": null, "date": "2020-12-03T20:55:00+01:00", "start": "20:55", "duration": "00:40", "room": "Session Area", "slug": "osfc2020-7531-project-mu", "url": "https://cfp.osfc.io/osfc2020/talk/ALPB3Y/", "title": "Project Mu", "subtitle": "", "track": null, "type": "Session", "language": "en", "abstract": "Project Mu Session with Jeremiah Cox", "description": null, "recording_license": "", "do_not_record": false, "persons": [{"code": "EU9GLW", "name": "Christian Walter", "avatar": "https://cfp.osfc.io/media/avatars/EU9GLW_rJkUJ5F.webp", "biography": "Firmware Developer - Security Researcher", "public_name": "Christian Walter", "guid": "29771759-30b4-5a64-8e56-802baf4f0551", "url": "https://cfp.osfc.io/osfc2020/speaker/EU9GLW/"}], "links": [], "feedback_url": "https://cfp.osfc.io/osfc2020/talk/ALPB3Y/feedback/", "origin_url": "https://cfp.osfc.io/osfc2020/talk/ALPB3Y/", "attachments": []}]}}]}}}