Linux kernel ARM中初级GIC与次级GIC之间的差异

Linux kernel ARM中初级GIC与次级GIC之间的差异,linux-kernel,arm,cortex-a8,Linux Kernel,Arm,Cortex A8,根据gic设备树绑定的内核文档 “主GIC直接连接到CPU,通常具有PPI和SGI。” “辅助GIC级联到上行中断控制器中,并且不 有PPI或SGI。” 我在GIC-400中找不到“初级/次级GIC”一词。 任何人都可以描述一下它们之间的区别,或者指向说明它的文档。主要术语和次要术语是Linux术语。您不会在ARM数据表中找到它。PPI按CPU存储。代码可以在任何CPU上执行,因此只能设置额外的中断。我认为这相当迂腐,因为大多数系统只有一个控制器 了解支持多少中断 GIC最多只支持1020个中断

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

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

“辅助GIC级联到上行中断控制器中,并且不 有PPI或SGI。”

我在GIC-400中找不到“初级/次级GIC”一词。 任何人都可以描述一下它们之间的区别,或者指向说明它的文档。

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

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

这来自控制器上地址空间的分配。只有解码空间可以容纳1020个外部中断。注意,定义
CONFIG_GIC_NON_BANKED
和无银行寄存器的钞票Frankein GIC。。。在SMP-ARM中,GIC将服务于所有核心是最正常的。变量
gic_nr
跟踪控制器的数量。如果有超过1020个中断源,则需要另一个控制器

谁能描述一下区别

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

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

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

这来自控制器上地址空间的分配。只有解码空间可以容纳1020个外部中断。注意,定义
CONFIG_GIC_NON_BANKED
和无银行寄存器的钞票Frankein GIC。。。在SMP-ARM中,GIC将服务于所有核心是最正常的。变量
gic_nr
跟踪控制器的数量。如果有超过1020个中断源,则需要另一个控制器

谁能描述一下区别

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

PPI代表外围专用中断,适用于手头没有数据表的用户;通常用于CPU特定中断,如每个核心看门狗、定时器等。其他中断源对所有CPU都是全局的。PPI代表外围专用中断,适用于手头没有数据表的用户;通常用于CPU特定的中断,如每核看门狗、定时器等。其他中断源对所有CPU都是全局的。