SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
1 
ARM Trusted Firmware 
LCA14 – March 2014 
Andrew Thoelke 
Systems & Software, ARM
ARM Trusted Firmware for 64-bit ARMv8-A 
A refresher 
 Standardized EL3 Runtime Firmware 
 Reducing porting and integration work 
 Reusable, reference implementations 
 Running on ARMv8-A FVPs and Juno 
2 
 For all 64-bit ARMv8-A systems 
 For SoC and Trusted OS developers 
 PSCI 
 SMC Calling Convention 
 Configuration of ARM hardware 
 … and on partner’s silicon 
Normal World OS 
EL1/EL2 
ARM Trusted Firmware 
EL3 
SoC/platform port 
TOS library 
https://www.github.com/ARM-Software/arm-trusted-firmware 
Trusted App 
Secure-EL0 
Trusted OS 
Secure-EL1 
TOS specific 
protocol and 
mechanism 
Trusted OS Dispatcher 
App 
EL0 
TOS driver 
TOS specific protocol via SMC 
via ioctl 
Porting interface 
between Trusted 
Firmware and SoC/ 
platform 
Interface between 
Trusted Firmware and 
Trusted OS Dispatcher 
ARM Trusted Firmware 
Trusted OS supplier 
SoC supplier 
OS/hypervisor supplier 
Trusted App supplier 
Internal TOS interface
ARM Trusted Firmware for 64-bit ARMv8-A 
A refresher 
 Reference boot flows 
 Open Source at GitHub 
 We just released v1.0 
3 
 For 64-bit ARMv8-A systems 
 BSD License 
 Contributors welcome 
 A reason to celebrate? 
Trusted World Normal World 
Trusted OS Kernel 
BL31 
EL3 Runtime Firmware 
BL2 
Trusted Boot 
Firmware 
BL30 
SCP Runtime 
Firmware 
System & 
Power Control 
SMCCC 
https://www.github.com/ARM-Software/arm-trusted-firmware 
BL33 
Non-Trusted 
Firmware 
(e.g. U-Boot, 
EDK2) 
Key 
SCP Execution 
EL3 Execution 
Secure-EL1 Execution 
EL2 Execution 
BL1 
AP Boot ROM 
BL32 
Secure-EL1 Payload 
BL0 
SCP Boot 
ROM 
Platform Boot 
Initialization 
Trusted Board 
Boot 
Trusted Board 
Boot 
PSCI 
World Switch 
Library 
S-EL1 Payload 
Dispatch 
SCP Application Processor (AP) 
2nd level Boot 
Loader (BL2) 
loads all 3rd level 
images 
1st level Boot 
Loader (BL1) 
loads 2nd level 
image 
Loading 
RESET RESET
4 
What’s happened since last time? 
https://www.github.com/ARM-Software/arm-trusted-firmware
Juno 
ARM Trusted Firmware on ARMv8-A silicon 
5 
PWR 
ON 
Incremental copy from 
AP Trusted RAM to 
SCP Trusted RAM 
Trusted Boot 
Firmware 
Explicit API Usage 
BL2 
https://www.github.com/ARM-Software/arm-trusted-firmware 
 Juno port upstream 
 Complete PSCI implementation 
 Application processor 
firmware is all open for 
updating by developers 
 Still to come: 
 More secure RAM for 
Trusted OS porting and 
development 
 Authentication of firmware 
images during boot 
Secure-EL1 Execution 
EL1/EL2 Execution 
SCP Boot 
ROM 
SCP Runtime 
Firmware 
AP Boot 
ROM 
SCP Boot 
ROM 
EL3 Runtime 
Firmware 
Non-Trusted 
Firmware 
SCP Trusted ROM SCP Trusted RAM AP Trusted ROM AP Trusted RAM (on chip) Trusted RAM 
(on or off chip) 
Non-Trusted RAM 
SCP Runtime 
Firmware 
Waiting 
PWR 
ON 
Linux Kernel 
External Hand-Off 
API 
Internal Hand-Off 
API 
Implicit API Usage 
Key 
EL3 Execution 
Component loading 
other Component 
SCP Execution 
BL0 
BL0 
BL1 
BL30 
BL30 
BL31 
BL33 
Secure-EL1 
Payload 
BL32 
Running 
EL3 Runtime 
Firmware 
BL31 
Waiting 
Running 
Running 
(optional) 
Running 
Waiting 
Trusted Boot 
Firmware 
BL2 
Trusted/Non-Trusted Boundary 
SCP/AP Boundary 
via SMC 
in BL1 
No Execution 
Detailed boot flow on Juno
Trusted OS and TEE 
Support for 3rd party Trusted OS/TEE 
 Support for secure interrupts and 
secure DDR RAM 
 OP-TEED patches merged this week 
6 
 Supporting different Trusted OS memory 
and interrupt requirements 
 Thank you Jens! 
 OP-TEE now running on ARMv8-A FVP 
models – all code upstream 
Normal World OS 
EL1/EL2 
Trusted App 
Secure-EL0 
OP-TEE protocol 
and mechanism 
TEE Client API 
OP-TEE client 
OS/hypervisor supplier Trusted App supplier Global Platforms spec. 
https://www.github.com/ARM-Software/arm-trusted-firmware 
 Still wanted: 
 OP-TEE running on ARMv8-A silicon 
 Dispatchers for other OSS Trusted OSes 
ARM Trusted Firmware github.com/OP-TEE 
SoC supplier 
Internal OP-TEE interface 
ARM Trusted Firmware 
EL3 
SoC/platform port 
OP-TEE OS 
Secure-EL1 
OP-TEE Dispatcher 
(OPTEED) 
App 
EL0 
OP-TEE Linux 
driver 
OP-TEE protocol via SMC 
via ioctl 
TEE Internal API 
Porting interface 
between Trusted 
Firmware and SoC/ 
platform
Production Platforms 
ARM Trusted Firmware running on partners’ ARMv8-A silicon 
 Alternative boot flows supported 
 Improved debugging of firmware errors 
 Easy selection of 32/64-bit execution 
7 
 Reuse of existing secure boot loaders 
 Reset to RAM firmware 
 Stable boot flow interfaces 
 Crash reporting for fatal errors and 
unexpected exceptions 
 Register width for Trusted OS 
 Exception Level and register width for 
normal world software 
 Platforms with wide I/O addresses 
 “Follow the manual” CPU specific code 
 For correct hardware operation 
 Still to come 
 Performance and scalability investigation and 
improvements 
 Even more boot flow flexibility – Enterprise 
and Networking scenarios 
 Improving integration for SoC suppliers, 
Trusted OS suppliers and OEMs 
https://www.github.com/ARM-Software/arm-trusted-firmware
Shrinking firmware 
The evolution of ARM Trusted Firmware’s memory footprint* 
8 
64KB ROM RAM 
64 128 192 256KB 
https://www.github.com/ARM-Software/arm-trusted-firmware 
24 
16 
12 
44 
20 
12 
64 
36 
28 
108 
96 
56 
68 
52 
28 
8 
4 
4 
v0.3 
v0.4 
v1.0 
BL1 BL2 BL3-1 BL3-2 
292KB 
208KB 
128KB† 
* Memory usage of code and data for a release build of ARM Trusted Firmware for FVP including the TSP 
† In v1.0 the peak memory usage is even lower as some of the firmware images are overlayed in the same 
memory during the course of booting the platform
Next time in ARM Trusted Firmware… 
 ARM is planning to have contributed 
 What else shows up depends on you 
9 
 A reference implementation of Trusted Board Boot, up to the non-secure firmware 
 Support for PSCI v1.0 – a specification update is in progress 
 Tell us what’s broken 
 Tell us what’s missing 
 Send us your improvements … new contributions are always welcome 
https://www.github.com/ARM-Software/arm-trusted-firmware
10 
https://www.github.com/ARM-Software/arm-trusted-firmware 
Thank you

Más contenido relacionado

La actualidad más candente

Demystifying Security Root of Trust Approaches for IoT/Embedded - SFO17-304
Demystifying Security Root of Trust Approaches for IoT/Embedded  - SFO17-304Demystifying Security Root of Trust Approaches for IoT/Embedded  - SFO17-304
Demystifying Security Root of Trust Approaches for IoT/Embedded - SFO17-304
Linaro
 
LCU14 302- How to port OP-TEE to another platform
LCU14 302- How to port OP-TEE to another platformLCU14 302- How to port OP-TEE to another platform
LCU14 302- How to port OP-TEE to another platform
Linaro
 
03_03_Implementing_PCIe_ATS_in_ARM-based_SoCs_Final
03_03_Implementing_PCIe_ATS_in_ARM-based_SoCs_Final03_03_Implementing_PCIe_ATS_in_ARM-based_SoCs_Final
03_03_Implementing_PCIe_ATS_in_ARM-based_SoCs_Final
Gopi Krishnamurthy
 
TEE - kernel support is now upstream. What this means for open source security
TEE - kernel support is now upstream. What this means for open source securityTEE - kernel support is now upstream. What this means for open source security
TEE - kernel support is now upstream. What this means for open source security
Linaro
 

La actualidad más candente (20)

Embedded Linux Kernel - Build your custom kernel
Embedded Linux Kernel - Build your custom kernelEmbedded Linux Kernel - Build your custom kernel
Embedded Linux Kernel - Build your custom kernel
 
Virtualization Support in ARMv8+
Virtualization Support in ARMv8+Virtualization Support in ARMv8+
Virtualization Support in ARMv8+
 
BKK16-110 A Gentle Introduction to Trusted Execution and OP-TEE
BKK16-110 A Gentle Introduction to Trusted Execution and OP-TEEBKK16-110 A Gentle Introduction to Trusted Execution and OP-TEE
BKK16-110 A Gentle Introduction to Trusted Execution and OP-TEE
 
Linux on ARM 64-bit Architecture
Linux on ARM 64-bit ArchitectureLinux on ARM 64-bit Architecture
Linux on ARM 64-bit Architecture
 
Demystifying Security Root of Trust Approaches for IoT/Embedded - SFO17-304
Demystifying Security Root of Trust Approaches for IoT/Embedded  - SFO17-304Demystifying Security Root of Trust Approaches for IoT/Embedded  - SFO17-304
Demystifying Security Root of Trust Approaches for IoT/Embedded - SFO17-304
 
BUD17-400: Secure Data Path with OPTEE
BUD17-400: Secure Data Path with OPTEE BUD17-400: Secure Data Path with OPTEE
BUD17-400: Secure Data Path with OPTEE
 
U Boot or Universal Bootloader
U Boot or Universal BootloaderU Boot or Universal Bootloader
U Boot or Universal Bootloader
 
Lcu14 107- op-tee on ar mv8
Lcu14 107- op-tee on ar mv8Lcu14 107- op-tee on ar mv8
Lcu14 107- op-tee on ar mv8
 
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
 
U-boot and Android Verified Boot 2.0
U-boot and Android Verified Boot 2.0U-boot and Android Verified Boot 2.0
U-boot and Android Verified Boot 2.0
 
LCU14 302- How to port OP-TEE to another platform
LCU14 302- How to port OP-TEE to another platformLCU14 302- How to port OP-TEE to another platform
LCU14 302- How to port OP-TEE to another platform
 
03_03_Implementing_PCIe_ATS_in_ARM-based_SoCs_Final
03_03_Implementing_PCIe_ATS_in_ARM-based_SoCs_Final03_03_Implementing_PCIe_ATS_in_ARM-based_SoCs_Final
03_03_Implementing_PCIe_ATS_in_ARM-based_SoCs_Final
 
Kernel Recipes 2018 - Overview of SD/eMMC, their high speed modes and Linux s...
Kernel Recipes 2018 - Overview of SD/eMMC, their high speed modes and Linux s...Kernel Recipes 2018 - Overview of SD/eMMC, their high speed modes and Linux s...
Kernel Recipes 2018 - Overview of SD/eMMC, their high speed modes and Linux s...
 
Secureboot Survival Guide
Secureboot Survival GuideSecureboot Survival Guide
Secureboot Survival Guide
 
U-Boot Porting on New Hardware
U-Boot Porting on New HardwareU-Boot Porting on New Hardware
U-Boot Porting on New Hardware
 
Q4.11: Introduction to eMMC
Q4.11: Introduction to eMMCQ4.11: Introduction to eMMC
Q4.11: Introduction to eMMC
 
BeagleBone Black Bootloaders
BeagleBone Black BootloadersBeagleBone Black Bootloaders
BeagleBone Black Bootloaders
 
Bootstrap process of u boot (NDS32 RISC CPU)
Bootstrap process of u boot (NDS32 RISC CPU)Bootstrap process of u boot (NDS32 RISC CPU)
Bootstrap process of u boot (NDS32 RISC CPU)
 
Video Drivers
Video DriversVideo Drivers
Video Drivers
 
TEE - kernel support is now upstream. What this means for open source security
TEE - kernel support is now upstream. What this means for open source securityTEE - kernel support is now upstream. What this means for open source security
TEE - kernel support is now upstream. What this means for open source security
 

Similar a LCU14 500 ARM Trusted Firmware

"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ..."Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
Edge AI and Vision Alliance
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
NETWAYS
 
Day 1 - 01 - Welcome
Day 1 - 01 - WelcomeDay 1 - 01 - Welcome
Day 1 - 01 - Welcome
webhostingguy
 
HKG18-317 - Arm Server Ready Program
HKG18-317 - Arm Server Ready ProgramHKG18-317 - Arm Server Ready Program
HKG18-317 - Arm Server Ready Program
Linaro
 

Similar a LCU14 500 ARM Trusted Firmware (20)

Slimline Open Firmware
Slimline Open FirmwareSlimline Open Firmware
Slimline Open Firmware
 
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdf
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdfBuilding PoC ready ODM Platforms with Arm SystemReady v5.2.pdf
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdf
 
ARM Processor Tutorial
ARM Processor Tutorial ARM Processor Tutorial
ARM Processor Tutorial
 
Linux firmware for iRMC controller on Fujitsu Primergy servers
Linux firmware for iRMC controller on Fujitsu Primergy serversLinux firmware for iRMC controller on Fujitsu Primergy servers
Linux firmware for iRMC controller on Fujitsu Primergy servers
 
BKK16-309A Open Platform support in UEFI
BKK16-309A Open Platform support in UEFIBKK16-309A Open Platform support in UEFI
BKK16-309A Open Platform support in UEFI
 
Bkk16 309B Enterprise Firmware - The gold standard and how to get there
Bkk16 309B Enterprise Firmware - The gold standard and how to get thereBkk16 309B Enterprise Firmware - The gold standard and how to get there
Bkk16 309B Enterprise Firmware - The gold standard and how to get there
 
Q2.12: Power Management Across OSs
Q2.12: Power Management Across OSsQ2.12: Power Management Across OSs
Q2.12: Power Management Across OSs
 
Debian on ARM - Gnunify2015
Debian on ARM - Gnunify2015Debian on ARM - Gnunify2015
Debian on ARM - Gnunify2015
 
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ..."Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
"Building Complete Embedded Vision Systems on Linux—From Camera to Display," ...
 
Tesla Hacking to FreedomEV
Tesla Hacking to FreedomEVTesla Hacking to FreedomEV
Tesla Hacking to FreedomEV
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
 
Summit 16: OPNFV on ARM - Hardware Freedom of Choice Has Arrived!
Summit 16: OPNFV on ARM - Hardware Freedom of Choice Has Arrived!Summit 16: OPNFV on ARM - Hardware Freedom of Choice Has Arrived!
Summit 16: OPNFV on ARM - Hardware Freedom of Choice Has Arrived!
 
Day 1 - 01 - Welcome
Day 1 - 01 - WelcomeDay 1 - 01 - Welcome
Day 1 - 01 - Welcome
 
SFO15-205: OP-TEE Content Decryption with Microsoft PlayReady on ARM
SFO15-205: OP-TEE Content Decryption with Microsoft PlayReady on ARMSFO15-205: OP-TEE Content Decryption with Microsoft PlayReady on ARM
SFO15-205: OP-TEE Content Decryption with Microsoft PlayReady on ARM
 
Morello Software and Toolchain Work in Arm - Mark Nicholson, Arm
Morello Software and Toolchain Work in Arm - Mark Nicholson, ArmMorello Software and Toolchain Work in Arm - Mark Nicholson, Arm
Morello Software and Toolchain Work in Arm - Mark Nicholson, Arm
 
Provisioning the IoT
Provisioning the IoTProvisioning the IoT
Provisioning the IoT
 
HKG18-317 - Arm Server Ready Program
HKG18-317 - Arm Server Ready ProgramHKG18-317 - Arm Server Ready Program
HKG18-317 - Arm Server Ready Program
 
Cryptographic Hardware Support for the Linux Kernel - Netconf 2004
Cryptographic Hardware Support for the Linux Kernel - Netconf 2004Cryptographic Hardware Support for the Linux Kernel - Netconf 2004
Cryptographic Hardware Support for the Linux Kernel - Netconf 2004
 
Spectra OE Webcast July 2010
Spectra OE Webcast July 2010Spectra OE Webcast July 2010
Spectra OE Webcast July 2010
 
Software update for embedded systems
Software update for embedded systemsSoftware update for embedded systems
Software update for embedded systems
 

Más de Linaro

Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloDeep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Linaro
 
HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018
Linaro
 
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
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
 

Más de Linaro (20)

Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloDeep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
 
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaArm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
 
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraHuawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
 
Bud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaBud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qa
 
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
 
HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018
 
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
 
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
 
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
 

Último

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 

Último (20)

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 

LCU14 500 ARM Trusted Firmware

  • 1. 1 ARM Trusted Firmware LCA14 – March 2014 Andrew Thoelke Systems & Software, ARM
  • 2. ARM Trusted Firmware for 64-bit ARMv8-A A refresher  Standardized EL3 Runtime Firmware  Reducing porting and integration work  Reusable, reference implementations  Running on ARMv8-A FVPs and Juno 2  For all 64-bit ARMv8-A systems  For SoC and Trusted OS developers  PSCI  SMC Calling Convention  Configuration of ARM hardware  … and on partner’s silicon Normal World OS EL1/EL2 ARM Trusted Firmware EL3 SoC/platform port TOS library https://www.github.com/ARM-Software/arm-trusted-firmware Trusted App Secure-EL0 Trusted OS Secure-EL1 TOS specific protocol and mechanism Trusted OS Dispatcher App EL0 TOS driver TOS specific protocol via SMC via ioctl Porting interface between Trusted Firmware and SoC/ platform Interface between Trusted Firmware and Trusted OS Dispatcher ARM Trusted Firmware Trusted OS supplier SoC supplier OS/hypervisor supplier Trusted App supplier Internal TOS interface
  • 3. ARM Trusted Firmware for 64-bit ARMv8-A A refresher  Reference boot flows  Open Source at GitHub  We just released v1.0 3  For 64-bit ARMv8-A systems  BSD License  Contributors welcome  A reason to celebrate? Trusted World Normal World Trusted OS Kernel BL31 EL3 Runtime Firmware BL2 Trusted Boot Firmware BL30 SCP Runtime Firmware System & Power Control SMCCC https://www.github.com/ARM-Software/arm-trusted-firmware BL33 Non-Trusted Firmware (e.g. U-Boot, EDK2) Key SCP Execution EL3 Execution Secure-EL1 Execution EL2 Execution BL1 AP Boot ROM BL32 Secure-EL1 Payload BL0 SCP Boot ROM Platform Boot Initialization Trusted Board Boot Trusted Board Boot PSCI World Switch Library S-EL1 Payload Dispatch SCP Application Processor (AP) 2nd level Boot Loader (BL2) loads all 3rd level images 1st level Boot Loader (BL1) loads 2nd level image Loading RESET RESET
  • 4. 4 What’s happened since last time? https://www.github.com/ARM-Software/arm-trusted-firmware
  • 5. Juno ARM Trusted Firmware on ARMv8-A silicon 5 PWR ON Incremental copy from AP Trusted RAM to SCP Trusted RAM Trusted Boot Firmware Explicit API Usage BL2 https://www.github.com/ARM-Software/arm-trusted-firmware  Juno port upstream  Complete PSCI implementation  Application processor firmware is all open for updating by developers  Still to come:  More secure RAM for Trusted OS porting and development  Authentication of firmware images during boot Secure-EL1 Execution EL1/EL2 Execution SCP Boot ROM SCP Runtime Firmware AP Boot ROM SCP Boot ROM EL3 Runtime Firmware Non-Trusted Firmware SCP Trusted ROM SCP Trusted RAM AP Trusted ROM AP Trusted RAM (on chip) Trusted RAM (on or off chip) Non-Trusted RAM SCP Runtime Firmware Waiting PWR ON Linux Kernel External Hand-Off API Internal Hand-Off API Implicit API Usage Key EL3 Execution Component loading other Component SCP Execution BL0 BL0 BL1 BL30 BL30 BL31 BL33 Secure-EL1 Payload BL32 Running EL3 Runtime Firmware BL31 Waiting Running Running (optional) Running Waiting Trusted Boot Firmware BL2 Trusted/Non-Trusted Boundary SCP/AP Boundary via SMC in BL1 No Execution Detailed boot flow on Juno
  • 6. Trusted OS and TEE Support for 3rd party Trusted OS/TEE  Support for secure interrupts and secure DDR RAM  OP-TEED patches merged this week 6  Supporting different Trusted OS memory and interrupt requirements  Thank you Jens!  OP-TEE now running on ARMv8-A FVP models – all code upstream Normal World OS EL1/EL2 Trusted App Secure-EL0 OP-TEE protocol and mechanism TEE Client API OP-TEE client OS/hypervisor supplier Trusted App supplier Global Platforms spec. https://www.github.com/ARM-Software/arm-trusted-firmware  Still wanted:  OP-TEE running on ARMv8-A silicon  Dispatchers for other OSS Trusted OSes ARM Trusted Firmware github.com/OP-TEE SoC supplier Internal OP-TEE interface ARM Trusted Firmware EL3 SoC/platform port OP-TEE OS Secure-EL1 OP-TEE Dispatcher (OPTEED) App EL0 OP-TEE Linux driver OP-TEE protocol via SMC via ioctl TEE Internal API Porting interface between Trusted Firmware and SoC/ platform
  • 7. Production Platforms ARM Trusted Firmware running on partners’ ARMv8-A silicon  Alternative boot flows supported  Improved debugging of firmware errors  Easy selection of 32/64-bit execution 7  Reuse of existing secure boot loaders  Reset to RAM firmware  Stable boot flow interfaces  Crash reporting for fatal errors and unexpected exceptions  Register width for Trusted OS  Exception Level and register width for normal world software  Platforms with wide I/O addresses  “Follow the manual” CPU specific code  For correct hardware operation  Still to come  Performance and scalability investigation and improvements  Even more boot flow flexibility – Enterprise and Networking scenarios  Improving integration for SoC suppliers, Trusted OS suppliers and OEMs https://www.github.com/ARM-Software/arm-trusted-firmware
  • 8. Shrinking firmware The evolution of ARM Trusted Firmware’s memory footprint* 8 64KB ROM RAM 64 128 192 256KB https://www.github.com/ARM-Software/arm-trusted-firmware 24 16 12 44 20 12 64 36 28 108 96 56 68 52 28 8 4 4 v0.3 v0.4 v1.0 BL1 BL2 BL3-1 BL3-2 292KB 208KB 128KB† * Memory usage of code and data for a release build of ARM Trusted Firmware for FVP including the TSP † In v1.0 the peak memory usage is even lower as some of the firmware images are overlayed in the same memory during the course of booting the platform
  • 9. Next time in ARM Trusted Firmware…  ARM is planning to have contributed  What else shows up depends on you 9  A reference implementation of Trusted Board Boot, up to the non-secure firmware  Support for PSCI v1.0 – a specification update is in progress  Tell us what’s broken  Tell us what’s missing  Send us your improvements … new contributions are always welcome https://www.github.com/ARM-Software/arm-trusted-firmware