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

一、中断管理框架中的假设

该框架作出以下假设以简化其实现。

  • 1、尽管该框架支持2种类型的安全中断(EL3和secure-EL1中断),但只有Arm GICv3这样的中断控制器架构支持0组中断形式的EL3中断。在Arm GICv2中,假设所有安全中断都在secure-EL1中处理。它们可以通过EL3传送到Secure-EL1,但不能在EL3中处理。
  • 2、中断异常(PSTATE.I和F位)在EL3中执行期间被屏蔽。
  • 3、中断管理:以下部分描述中断处理框架如何管理中断。这需要:
    • 1、提供一个接口,允许注册一个处理程序,并指定一种中断类型的路由模型。
    • 2、实现支持在生成中断时将中断类型的控制交给其注册的处理程序。

中断管理的两个方面都涉及从EL3到secure-EL1的安全软件堆栈中的各种组件。软件组件一节介绍了这些组件。框架在以下数据结构中存储与每种类型的中断相关的信息。

typedef struct intr_type_desc {
        interrupt_type_handler_t handler;
        uint32_t flags;
        uint32_t scr_el3[2];
} intr_type_desc_t;

标志字段以位[1:0]存储中断类型的路由模型。当执行处于安全状态时,位[0]存储路由模型。当执行处于非安全状态时,位[1]存储路由模型。如节路由模型中所述,值0表示中断应以FEL为目标。值1表示它应该针对EL3。剩余的位被保留和SBZ。助手宏set_interrupt_rm_flag()应用于设置flags参数中的位。

scr_el3[2]字段还存储路由模型,但作为标志字段中的模型到每个安全状态的sc

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TrustZone_Hcoco

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值