SlideShare ist ein Scribd-Unternehmen logo
1 von 12
Downloaden Sie, um offline zu lesen
Embedded Base Boot Requirements
Dong Wei
Platform Architecture
Base System Architecture (BSA)
○Defines hardware requirements
Base Boot Requirements (BBR)
○Defines firmware requirements
These specifications require a
minimum set of hardware and firmware
implementations that will ensure OS
and firmware will interoperate
EBBR is the BBR for the embedded
systems
Rationale and Scope
To define the firmware and bootloader requirements for Arm embedded
devices which require a standardized interface between the platform
(firmware) and the OS (system software).
Differs in scope from Server Base Boot Requirements (SBBR)
○SBBR is targeted at general purpose compute
■strictly requires UEFI and ACPI
■Driven by requirements from enterprise OS vendors
○EBBR targets embedded when firmware/OS separation is required
■For example, class-A embedded devices like networking platforms
■Friendly to U-Boot and Devicetree implementations
■Intended to support embedded OS vendors and community distributions
Rationale and Scope
This specification is intended to be both practical and aspirational at the same
time
• Practical in that it seeks to solve the problems OS vendors face today with
regard to controlling the boot path of the platform.
• Practical in that it codifies what is feasible now or in the near future (ex. UEFI
interfaces in U-Boot)
• Aspirational in that it specifies important features which may still require
development to achieve. (ex. U-Boot support for UEFI Runtime services)
• Aspirational in that it seeks to move the bar on bare minimum expectations
on how Arm platforms should behave.
Overview
This specification defines a set of base firmware requirements for embedded
devices
○Compliant platforms must confirm to all the mandatory interfaces specified in EBBR
○Firmware must implement a subset of the UEFI specification
■Must implement boot services
■Must implement runtime services for changing boot variables
○May supply either Devicetree or ACPI system description data, but must conform to the
specifications for the selected mechanism.
This specification is intended to be OS-neutral. It leverages the prevalent
industry standard firmware specifications of UEFI and can be implemented
using U-Boot and Devicetree
Details - UEFI
• Compliant with v2.7 of UEFI spec or later
• UEFI running at EL2 if hypervisors are supported, EL1 otherwise
• If system boots from local block storage, storage must be GPT formatted and
use a FAT formatted system partition
• Support running UEFI 64-bit PE/COFF loaded images containing only A64
code
• Optionally may implement Secure Boot
○ but if implemented it must confirm with UEFI specification for Secure Boot
Details – UEFI Runtime Services
○ UEFI Runtime services must be implemented
■ must support running at either EL1 or EL2(if implemented)
○ UEFI Memory Map minimum page size is 4K
○ To support 64K pages in the OS, all 4k pages within the same 64k block must use identical
page attributes.
○ SetTime()/GetTime() must be implemented for interacting with real time clock
Details – UEFI Runtime Services – System Reset
○ EfiResetCold()/EfiResetShutdown() must be implemented, and shutdown must not reset the
system
○ EfiWarmReset() must be implemented if used to support capsule updates.
○ System software shall use EFI runtime services for all system resets
■ Must not call PSCI directly (UEFI may have work to do).
Details – UEFI Runtime Services – Variables
○Non-Volatile variables must be implemented and may not be emulated with RAM
○Non-Volatile storage by runtime services much not require OS intervention (ie. To store to
eMMC)
Questions
• Do we have the correct scope?
• Are the requirements too tight, or not tight enough?
• Are runtime services something useful for this market segment?
○ Runtime services are used to manipulate variables after booting an OS
○ The alternative is to do all variable manipulation from a UEFI application before
ExitBootServices() is called.
EBBR
Specification Development:
Specification Location:
https://developer.arm.com/products/architecture/system-
architecture/embedded-system-architecture
Mailing list: arm.ebbr-discuss@arm.com.
Future venues: ELCE, UEFI Plugfest
Thank You
#SFO17
SFO17 keynotes and videos on: connect.linaro.org
For further information: www.linaro.org

Weitere ähnliche Inhalte

Mehr von Linaro

Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Linaro
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
Linaro
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
Linaro
 
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorHKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
Linaro
 
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMUHKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMU
Linaro
 
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation
Linaro
 
HKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootHKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted boot
Linaro
 
HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...
HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...
HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...
Linaro
 
HKG18-317 - Arm Server Ready Program
HKG18-317 - Arm Server Ready ProgramHKG18-317 - Arm Server Ready Program
HKG18-317 - Arm Server Ready Program
Linaro
 
HKG18-312 - CMSIS-NN
HKG18-312 - CMSIS-NNHKG18-312 - CMSIS-NN
HKG18-312 - CMSIS-NN
Linaro
 
HKG18-301 - Dramatically Accelerate 96Board Software via an FPGA with Integra...
HKG18-301 - Dramatically Accelerate 96Board Software via an FPGA with Integra...HKG18-301 - Dramatically Accelerate 96Board Software via an FPGA with Integra...
HKG18-301 - Dramatically Accelerate 96Board Software via an FPGA with Integra...
Linaro
 
HKG18-300K2 - Keynote: Tomas Evensen - All Programmable SoCs? – Platforms to ...
HKG18-300K2 - Keynote: Tomas Evensen - All Programmable SoCs? – Platforms to ...HKG18-300K2 - Keynote: Tomas Evensen - All Programmable SoCs? – Platforms to ...
HKG18-300K2 - Keynote: Tomas Evensen - All Programmable SoCs? – Platforms to ...
Linaro
 
HKG18-212 - Trusted Firmware M: Introduction
HKG18-212 - Trusted Firmware M: IntroductionHKG18-212 - Trusted Firmware M: Introduction
HKG18-212 - Trusted Firmware M: Introduction
Linaro
 
HKG18-116 - RAS Solutions for Arm64 Servers
HKG18-116 - RAS Solutions for Arm64 ServersHKG18-116 - RAS Solutions for Arm64 Servers
HKG18-116 - RAS Solutions for Arm64 Servers
Linaro
 
HKG18-TR14 - Postmortem Debugging with Coresight
HKG18-TR14 - Postmortem Debugging with CoresightHKG18-TR14 - Postmortem Debugging with Coresight
HKG18-TR14 - Postmortem Debugging with Coresight
Linaro
 

Mehr von Linaro (20)

Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
 
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
 
HKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteHKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening Keynote
 
HKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopHKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP Workshop
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
 
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allHKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
 
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorHKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
 
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMUHKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMU
 
HKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MHKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8M
 
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation
 
HKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootHKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted boot
 
HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...
HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...
HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...
 
HKG18-317 - Arm Server Ready Program
HKG18-317 - Arm Server Ready ProgramHKG18-317 - Arm Server Ready Program
HKG18-317 - Arm Server Ready Program
 
HKG18-312 - CMSIS-NN
HKG18-312 - CMSIS-NNHKG18-312 - CMSIS-NN
HKG18-312 - CMSIS-NN
 
HKG18-301 - Dramatically Accelerate 96Board Software via an FPGA with Integra...
HKG18-301 - Dramatically Accelerate 96Board Software via an FPGA with Integra...HKG18-301 - Dramatically Accelerate 96Board Software via an FPGA with Integra...
HKG18-301 - Dramatically Accelerate 96Board Software via an FPGA with Integra...
 
HKG18-300K2 - Keynote: Tomas Evensen - All Programmable SoCs? – Platforms to ...
HKG18-300K2 - Keynote: Tomas Evensen - All Programmable SoCs? – Platforms to ...HKG18-300K2 - Keynote: Tomas Evensen - All Programmable SoCs? – Platforms to ...
HKG18-300K2 - Keynote: Tomas Evensen - All Programmable SoCs? – Platforms to ...
 
HKG18-212 - Trusted Firmware M: Introduction
HKG18-212 - Trusted Firmware M: IntroductionHKG18-212 - Trusted Firmware M: Introduction
HKG18-212 - Trusted Firmware M: Introduction
 
HKG18-116 - RAS Solutions for Arm64 Servers
HKG18-116 - RAS Solutions for Arm64 ServersHKG18-116 - RAS Solutions for Arm64 Servers
HKG18-116 - RAS Solutions for Arm64 Servers
 
HKG18-TR14 - Postmortem Debugging with Coresight
HKG18-TR14 - Postmortem Debugging with CoresightHKG18-TR14 - Postmortem Debugging with Coresight
HKG18-TR14 - Postmortem Debugging with Coresight
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Kürzlich hochgeladen (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Embedded Base Boot Requirements (EBBR) - SFO17-508

  • 1. Embedded Base Boot Requirements Dong Wei
  • 2. Platform Architecture Base System Architecture (BSA) ○Defines hardware requirements Base Boot Requirements (BBR) ○Defines firmware requirements These specifications require a minimum set of hardware and firmware implementations that will ensure OS and firmware will interoperate EBBR is the BBR for the embedded systems
  • 3. Rationale and Scope To define the firmware and bootloader requirements for Arm embedded devices which require a standardized interface between the platform (firmware) and the OS (system software). Differs in scope from Server Base Boot Requirements (SBBR) ○SBBR is targeted at general purpose compute ■strictly requires UEFI and ACPI ■Driven by requirements from enterprise OS vendors ○EBBR targets embedded when firmware/OS separation is required ■For example, class-A embedded devices like networking platforms ■Friendly to U-Boot and Devicetree implementations ■Intended to support embedded OS vendors and community distributions
  • 4. Rationale and Scope This specification is intended to be both practical and aspirational at the same time • Practical in that it seeks to solve the problems OS vendors face today with regard to controlling the boot path of the platform. • Practical in that it codifies what is feasible now or in the near future (ex. UEFI interfaces in U-Boot) • Aspirational in that it specifies important features which may still require development to achieve. (ex. U-Boot support for UEFI Runtime services) • Aspirational in that it seeks to move the bar on bare minimum expectations on how Arm platforms should behave.
  • 5. Overview This specification defines a set of base firmware requirements for embedded devices ○Compliant platforms must confirm to all the mandatory interfaces specified in EBBR ○Firmware must implement a subset of the UEFI specification ■Must implement boot services ■Must implement runtime services for changing boot variables ○May supply either Devicetree or ACPI system description data, but must conform to the specifications for the selected mechanism. This specification is intended to be OS-neutral. It leverages the prevalent industry standard firmware specifications of UEFI and can be implemented using U-Boot and Devicetree
  • 6. Details - UEFI • Compliant with v2.7 of UEFI spec or later • UEFI running at EL2 if hypervisors are supported, EL1 otherwise • If system boots from local block storage, storage must be GPT formatted and use a FAT formatted system partition • Support running UEFI 64-bit PE/COFF loaded images containing only A64 code • Optionally may implement Secure Boot ○ but if implemented it must confirm with UEFI specification for Secure Boot
  • 7. Details – UEFI Runtime Services ○ UEFI Runtime services must be implemented ■ must support running at either EL1 or EL2(if implemented) ○ UEFI Memory Map minimum page size is 4K ○ To support 64K pages in the OS, all 4k pages within the same 64k block must use identical page attributes. ○ SetTime()/GetTime() must be implemented for interacting with real time clock
  • 8. Details – UEFI Runtime Services – System Reset ○ EfiResetCold()/EfiResetShutdown() must be implemented, and shutdown must not reset the system ○ EfiWarmReset() must be implemented if used to support capsule updates. ○ System software shall use EFI runtime services for all system resets ■ Must not call PSCI directly (UEFI may have work to do).
  • 9. Details – UEFI Runtime Services – Variables ○Non-Volatile variables must be implemented and may not be emulated with RAM ○Non-Volatile storage by runtime services much not require OS intervention (ie. To store to eMMC)
  • 10. Questions • Do we have the correct scope? • Are the requirements too tight, or not tight enough? • Are runtime services something useful for this market segment? ○ Runtime services are used to manipulate variables after booting an OS ○ The alternative is to do all variable manipulation from a UEFI application before ExitBootServices() is called.
  • 12. Thank You #SFO17 SFO17 keynotes and videos on: connect.linaro.org For further information: www.linaro.org