5、中断处理

本节详细描述了每个软件组件(参见软件组件一节)在处理特定类型中断时的作用。

5.1.EL3运行时固件

EL3运行时固件按如下方式填充runtime_exceptions变量引用的IRQ和FIQ异常向量。

  • 1、从具有SP_EL0或SP_EL3的当前异常级别获取的IRQ和FIQ异常被报告为不可恢复的错误条件。如前所述,EL3运行时固件始终在设置PSTATE.I和PSTATE.F位的情况下执行。
  • 2、以下文本描述了如何使用AArch64或AArch32处理来自较低异常级别的IRQ和FIQ异常。

当产生中断时,每种中断类型的向量负责:

  • 1、输入异常后立即保存整个通用寄存器上下文(x0-x30)。寄存器保存在SP_EL3寄存器引用的每cpu cpu_text数据结构中。
  • 2、将ELR_EL3、SP_EL0和SPSR_EL3系统寄存器保存在SP_EL3寄存器引用的每cpu cpu_text数据结构中。
  • 3、通过从SP_EL0中的每cpu cpu_text数据结构恢复CTX_runtime_SP值并执行msr-spsel,#0指令,切换到C运行时堆栈。
  • 4、确定中断类型。安全-EL1中断将在FIQ向量处发出信号。非安全中断将在IRQ向量处发出信号。平台应实现以下API以确定挂起中断的类型。
uint32_t plat_ic_get_interrupt_type(void);

它应该返回INTR_TYPE_S_EL1或INTR_TYPE_NS。

  • 5、确定已生成的中断类型的处理程序。为此添加了以下API。
interrupt_type_handler get_interrupt_type_handler(uint32_t i

ATF官方文档翻译(二十):中断管理框架( Interrupt Management Framework)-中断处理相关推荐

  1. ATF官方文档翻译(十八):中断管理框架( Interrupt Management Framework)-中断管理框架中的假设软件组件

    一.中断管理框架中的假设 该框架作出以下假设以简化其实现. 1.尽管该框架支持2种类型的安全中断(EL3和secure-EL1中断),但只有Arm GICv3这样的中断控制器架构支持0组中断形式的EL ...

  2. ATF官方文档翻译(十):ATF固件设计(Firmware Design)-CPU特定操作框架

    CPU特定操作框架 Armv8-A体系结构的某些方面是由实现定义的,也就是说,某些行为不是由体系结构定义的,而是必须由单个处理器实现定义和记录的.TF-A实现了一个框架,该框架对通用实现定义的行为进行 ...

  3. ATF官方文档翻译(四):ATF固件设计(Firmware Design)(1)-冷启动

    1.固件设计-前言 Trusted Firmware-A(TF-A)实现了Trusted Board Boot Requirements(TBBR)平台设计的一个子集 Arm参考平台的文档(PDD). ...

  4. ATF官方文档翻译(二):Authentication Framework Chain of Trust(身份验证框架和信任链)(1)

    前言 本文件旨在描述在可信固件-A(TF-A)中实现的认证框架.该框架满足以下要求: 1.平台端口可以根据证书层次结构及其机制指定信任链去校验镜像和证书. 2.框架需要区别一下: + 这个机制是用于编 ...

  5. ATF官方文档翻译(二):Authentication Framework Chain of Trust(身份验证框架和信任链)(3)

    接上文 4.应用实例 本节详细介绍了使用身份验证框架的可信引导实现.本示例对应于TBBR客户端文档中指定的应用功能模式(AFM).建议阅读本指南和源代码. 4.1 .The TBBR CoT (CoT ...

  6. ATF官方文档翻译(二):Authentication Framework Chain of Trust(身份验证框架和信任链)(2)

    接上文翻译 3.信任链的具体实现 CoT就是按照一定的顺序将一系列镜像进行排列组合,这个顺序他们得按照这个顺序进行校验.每个镜像都有参数需要AM去校验,这些特性会在下面进行说明. 平台的接口是针对Co ...

  7. Injective Protocol官方文档翻译(二) -Injective Exchange Client、Injective API Provider

    文章目录 一.Injective Exchange Client 二.Injective API Provider 1. 交易转发服务(Transaction Relay Service) 2. 数据 ...

  8. Chainlink官方文档翻译(二) 中间件-随机数 Intermediates - Random Numbers)

    文章目录 Intermediates - Random Numbers 一.介绍 1. 请求和接受(Request & Receive) 2. 使用 LINK 3. 与Chainlink预言机 ...

  9. ATF官方文档翻译(十一):ATF固件设计(Firmware Design)-BL图像的内存布局

    友友一起学习点赞关注不迷路!!! BL镜像的内存布局 每个引导程序镜像可以分为两部分: •镜像的静态内容.这些数据实际上存储在磁盘上的二进制文件中.在ELF术语中,它们被称为PROGBITS部分: • ...

  10. Linux(十二)中断系统

    STM32 的中断系统主要有以下几个关键点: ①. 中断向量表. ②. NVIC(内嵌向量中断控制器). ③. 中断使能. ④. 中断服务函数. 中断向量表 中段向量表就是说明都有什么中断,这些中断服 ...

最新文章

  1. mysql数据存储过程详解_mysql数据存储过程参数实例详解
  2. easyui-datagrid加载时的效率低下,解决方案
  3. 【重点 递归版】剑指offer——面试题16:反转链表
  4. 个人总结之Volley的cookie处理
  5. CPU又烧了,说起来汝可能不信
  6. Visual Studio 2019 创建第一个ASP.net web应用程序
  7. stm32F4方向+脉冲发生器
  8. VGA显示原理、时序标准及相关参数
  9. 简述u盘安装计算机系统的方法,电脑系统安装常见的两种方式(U盘)
  10. 日文输入键盘罗马字对应表
  11. 颜色代码:网页颜色代码大全及色彩搭配教程
  12. 【Clemetine】数据挖掘在风险分析中的应用
  13. 为一个理想而奋斗一生
  14. Linux root管理员权限
  15. Java Integer值范围问题
  16. 2022中国企业家博鳌论坛耿明雨致白皮书
  17. 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
  18. Palm软件TOP10排行榜
  19. 软件对计算机有配置要求吗,学软件工程对笔记本电脑配置有要求吗?
  20. 将Pic文件(jpg,bmp等)转换为Icon c#

热门文章

  1. 基于竞争的众包软件开发:从客户角度的多方法研
  2. 关于文本pdf的表格抽取
  3. JAVA代码实现迅雷功能(下载图片、音乐、视频、电影)
  4. 千千万万的IT开发工程师路在何方
  5. 新人开博,自娱自乐一下。
  6. 【ES】进行PUT操作时报错:
  7. JQ modal design
  8. 自主定义一个函数并求一元二次方程的两个解
  9. [ImageMagick、ffmpeg]将9个gif图片组合成九宫格视频
  10. WPF 【视频墙 一 至 九宫格 框架功能】