ARM 中主 GIC 与辅助 GIC 之间的区别



根据 gic 设备树绑定的内核文档

"主GIC直接连接到CPU,通常具有PPI和SGI。

"次级 GIC 级联到向上中断控制器中,不会有PPI或SGI。

我在 GIC-400 中找不到术语主要/次要 GIC。任何人都可以描述差异或指出说明它的文档。

术语 PrimarySecondary 是 Linux 术语。 您将无法在 ARM 数据手册中找到它。 PPI 按 CPU 存储。 代码可以在任何 CPU 上执行,因此只能设置额外的中断。 我认为这是相当迂腐的,因为大多数系统只有一个控制器。

了解支持多少个中断。
GIC 最多仅支持 1020 个中断源。

这来自控制器上地址空间的分配。 只有解码空间可容纳1020个外部中断。 注意,定义CONFIG_GIC_NON_BANKED和没有银行寄存器的弗兰肯-GIC注释...SMP-ARM 中,GIC 将为所有内核提供服务,这是最正常的。 变量gic_nr跟踪控制器的数量。 如果中断源超过 1020 个,则需要另一个控制器。

谁能描述一下区别?

主要将为 PPI 提供服务。 PPI 存在于第二个控制器上,但它们是冗余的。 第 2(及更高)控制器仅用于外部中断。

相关内容

  • 没有找到相关文章

最新更新