ARM 全Trustzone解决方案,软件架构有ARM TBBR规范,在构建运行TEE环境时,ATF与TrustOS构成基本TEE执行环境。
本文主要介绍arm trust firmware组件。

####定义与缩略语:

REE: Rich Execution Environment
TEE: Trusted Execution Environment
OP-TEE :Open Portable Trusted Execution Environment
TA:Trusted Application sml:Secure monitor layer tos:Trust os
ATF:Arm-trusted-firmware

####ARMv8 TrustZone整体框架图:

####AArch64 环境介绍:

  1. APP 运行在NS/S EL0
  2. Kernel 运行在 EL1
  3. Trusted OS 运行在Secure EL1
  4. ATF(SML)运行在EL3 EL2 hypervisor据ARM介绍在服务器上可能会用到。

####ATF框架:

####ATF 主要的三个方面的功能
####Trust Boot
ATF满足安全启动的规范(TBBR),在初次启动时,平台上电后,cpu处于el3模式,从romcode到spl-sml-uboot-kernel,在进入kernel前,cpu处于安全模式,spl/sml/uboot都可以带上安全签名,保证软件与硬件都是安全的。后续suspend or reset 启动的时候,cpu处于el3及secure word, sml code 开始运行,而后切到kernel
normal word,注意reset与suspend回到kernel的地址是不一样的。

Power State Coordination Interface (PSCI)

ATF另外一个主要的功能,提供芯片相关的电压管理接口,将cpu相关的底层操作抽象出来给kernel调用,主要包括cpu idle/cpu boot/cpu off/system off/system rest以及预留的cpu migrate相关的接口。kernel通过smc来调用sml api。

Manage Interrupts

ARM可信固件实现了一个用于配置和管理的框架在任一安全状态下产生的中断。

[ATF][Power]ARMv8 arm trust firmware相关推荐

  1. QEMU模拟器启arm64 ATF(arm trust firmware) BL1, uboot方法

    目的: 使用QEMU(3.0版本以上)模拟一个arm64 virt平台,在virt平台上配置两个cfi flash. Flash0当作BootRom使用,"烧录"ATF(arm t ...

  2. ATF(Arm Trusted Firmware)/TF-A Chapter 02 BL1-ROMCode

    第二章目录: Chapter 02.TF-A(Arm Trusted Firmware, ATF ) BL1-ROMCode(本文) Chapter 02.TF-A(Arm Trusted Firmw ...

  3. ATF(Arm Trusted Firmware)/TF-A Chapter 01. 介绍

    1.TF-A 介绍 TF-A是一套通用的软件架构+特定于平台的实现代码. TF-A满足大多数SoC厂商的CPU设计:单核启动,多核启动,自定义reset vector,可裁剪的启动阶段,bootrom ...

  4. [ATF] ARM Trusted firmware 构建选项

    TF-A 构建系统支持以下构建选项.除非另有说明,这些选项应在构建命令行中指定,并且不会在任何组件生成文件中修改.请注意,构建系统不会跟踪构建选项的依赖性.因此,如果任何构建选项从先前的构建中发生更改 ...

  5. ATF(Arm Trusted Firmware)/TF-A Chapter 04 Authentication Framework

    4.1. 代码分析 首先,重新分析之前忽略掉的 TRUSTED_BOARD_BOOT =1 的情况,bl1_platform_setup->arm_bl1_platform_setup-> ...

  6. 设备树解析 i2c设备模型

    目录 1.基础概念 1.总线 2.手机启动流程 1.MTK启动流程 2.高通启动流程的差别 3.设备树解析 1.设备树相关 2.设备树解析 4. i2c 设备初始化流程 1.基础概念 1.总线 总线是 ...

  7. ARM平台的U-Boot移植详细步骤

    0. 背景介绍 我们手里这块RK3399开发板出厂时带的是2017.09版本的U-Boot. U-Boot 2017.09 (Sep 26 2021 - 08:53:15 +0000)Model: F ...

  8. MT6765-Preloader_流程分析--基于android 10

    preloader运行流程–基于MT6765 启动流程简介 ARM架构中,EL0/EL1是必须实现,EL2/EL3是选配,ELx跟层级对应关系: EL0 -- app EL1 -- Linux ker ...

  9. 深入MTK平台bootloader启动分析笔记

    bootloader到kernel启动总逻辑流程图 ARM架构中,EL0/EL1是必须实现,EL2/EL3是选配,ELx跟层级对应关系: EL0 -- app EL1 -- Linux kernel ...

最新文章

  1. python读文件写文件-python 文件读写操作
  2. [导入]JavaScript 滚动特效代码
  3. Sed教程(四):基本命令、特殊字符、字符串
  4. Java中如何执行source命令,在Java中运行UNIX Source命令
  5. viewDidLoad、viewWillAppear、viewWillDisappear
  6. LeetCode(合集) 路径总和(二叉树) golang copy的值复制
  7. Mysql中几种插入效率的实例对比
  8. Flume Sink Processor
  9. Spring MVC学习总结(11)——Spring MVC集成Swagger跨域问题
  10. Consul:网络坐标
  11. Android在自定义View(SurfaceView)中实现进度条Progress
  12. 如何卸载mysql server 2005_彻底的卸载SQL Server2005
  13. 苹果ipad怎么录屏_原来苹果手机还能这样投屏!1秒小屏变大屏!太好用了
  14. 正则表达式 java 截取指定字符中间的字符串
  15. 10、Map存储世界杯信息相关操作
  16. 没有巨头公司做内容支撑 剪辑软件公司小影科技上市后能跑多远?
  17. 作为开发者你必须要知道的五大浏览器,记得收藏
  18. 视频中的3D人体姿态估计(3D human pose estimation in vide)--------Facebook research: VideoPose3D
  19. Three.js样条曲线、贝赛尔曲线
  20. Sublime 中快速打开网页

热门文章

  1. 逸仙电商在美上市:高瓴资本、真格基金持股,被指疫情期非法裁员
  2. 如何在所有用户的桌面创建快捷方式
  3. 【学习】从零开发的Android音视频开发(13)——MediaCodec到OMX框架过程及其硬解码
  4. 用手机蓝牙锁定计算机,Bluetooth Screen Lock——当你离开时自动锁定Mac电脑
  5. iOS 设置字体 自定义字体
  6. JVM优化及面试热点分析
  7. DataBase First 基础(四) 删除或修改表时失败,因为相同类型的其他实体已具有相同的主键值***
  8. U盘病毒Global.exe专杀
  9. 数据库系统概论第五版课后习题
  10. 21天学通java第7版pdf_21天学通Java.第7版.pdf