baron · 3月25日 · 四川

[gic]-gicv2的bypass功能

快速连接

👉👉👉【精选】ARMv8/ARMv9架构入门到精通-目录 👈👈👈


 title=


1、gicv2的pass功能

giv2使用的三种配置:

  • Bypass Indicates that the IRQ signal to the processor is driven by the legacy IRQ signal.
  • Deasserted Indicates that the IRQ signal to the processor is deasserted.
  • Driven by GIC Indicates that the IRQ signal to the processor is driven by the GIC CPU interface logic

bypass旁路功能,其实就是让整个gic无效掉,这里其实是给第三方的中断控制器输出的FIQ IRQ使用的。
在这里插入图片描述
giv2 bypass的控制位
背景 : 在gicv2架构上,irq是给REE用的,fiq是给TEE用的。
当cpu运行在TEE时,来了一个IRQ中断,此时在TEE的中断向量表中会毫无条件的将cpu切换等到REE中,REE处理完这个中断再将cpu切回来....

需求: 例如这样的一个需求:cpu运行在TEE时,来了一个IRQ中断,我不想让IRQ打断TEE而切回到REE处理,那么我们就可以在TEE中bypass irq。

如下图中红框部分所示,GICC_CTLR寄存器是banked的,我们在TEE中配置该寄存器时,EnableGrp1=0,Enable Grp0=1,FIQEn=1,然后就可以bypass所有的TEE IRQ中断了
在这里插入图片描述
下图是bypass fiq:
在这里插入图片描述

2、gicv1的pass功能

在这里插入图片描述
在这里插入图片描述


关注"Arm精选"公众号,备注进ARM交流讨论区。
图片1.png

推荐阅读
关注数
9462
内容数
207
以易懂、渐进、有序的方式,深入探讨ARMv8/ARMv9架构的核心概念。我们将从基础知识开始,逐步深入,覆盖最新的架构,不再纠缠于过时技术。本系列内容包含但不限于ARM基础、SOC芯片基础、Trustzone、gic、异常和中断、AMBA、Cache、MMU等内容,并将持续更新。
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息