GICV3 前面32个中断 SPI+PPI 在gic redistributor中的配置,是每个CPU私有的配置,后面的SPI中断是在gic distributor中配置的,其硬件的基地址如图: 5.1) 中断重要的寄存器 * GICD_CTLR 使能group0 1使能中断以及路由等 * GICD_IROUTER<n> 当GICD_IROUTER.Interrupt_Routing_Mode= 0, SPIs 被路由到对应的配置亲和...
GIC_SPI 描述了interrupt type。对于GIC,它可以管理4种类型的中断: (1)外设中断(Peripheral interrupt)。根据目标CPU的不同,外设的中断可以分成PPI(Private Peripheral Interrupt)和SPI(Shared Peripheral Interrupt)。PPI只能分配给一个确定的processor,而SPI可以由Distributor将中断分配给一组Processor中的一个进行处理。...
ID16~ID31:这 16 个 ID 分配给 PPI。每个CPU核都有自己的16个。 ID32~ID1019:这 988 个 ID 分配给 SPI,像 GPIO 中断、串口中断等这些外部中断 ,至于具体到某个 ID 对应哪个中断那就由半导体厂商根据实际情况去定义了。 GIC-v2 架构分为了两个逻辑块:Distributor 和 CPU Interface,也就是分发器端和 CP...
- 对于SGI和PPI中断,当前中断在当前处理器中是pending状态的。 - 对于SPI中断,当前中断至少在一个处理器中处于pending状态。 上文提到过,对于SGI中断,写入GICD_ISPENDRn寄存器的操作将会被忽略,因为SGI有自己的Set-pending寄存器 SGI Set-Pending Registers, GICD_SPENDSGIRn。对于SPI和PPI中断来讲: 写入0:无影响 ...
SPI(共享外设中断) 这是一个全局外设中断,可以路由到指定的 PE,或一组 PE 中的一个。 PPI(专用外设中断) 这是针对单个特定 PE 的外设中断。 PPI 的一个示例是来自 PE 通用定时器的中断。 SGI(软件生成中断) SGI 通常用于处理器间通信,由写入 GIC 中的 SGI 寄存器生成。
1、gic的版本2、GICv3/gicv4的模型图3、gic中断号的划分4、GIC连接方式5、gic的状态6、gic框架7、gic Configuring推荐1、gic的版本GIC是一个为Cortex-A和Arm Cortex-R设计的标准的中断控制器 2、GICv3/gicv4的模型图 3、gic中断号的划分Shared Peripheral Interrupt (SPI)Private Peripheral Interrupt (PPI)...
GIC是一个为Cortex-A和Arm Cortex-R设计的标准的中断控制器 2、GICv3/gicv4的模型图 3、gic中断号的划分 Shared Peripheral Interrupt (SPI) Private Peripheral Interrupt (PPI) Software Generated Interrupt (SGI) Locality-specific Peripheral Interrupt (LPI) ...
理解#interrupt-cells这个属性需要理解interrupt specifier和interrupt domain这两个概念。interrupt specifier其实就是外设interrupt的属性值,对于uart3而言,其interrupt specifier就是<gic_spi 74="" irq_type_level_high=""><GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,也就是说,interrupt specifier定义了一个外设产生中断的...
对于SPI中断,当前中断至少在一个处理器中处于pending状态。 对于SPI和PPI中断来讲: 写入0:无影响 写入1:其效果取决于是边缘触发还是电平敏感中断: 边缘触发(Edge-triggered),如果中断不处于pending状态,则不受影响。如果之前是pending状态,则会变成inactive状态;如果之前是active and pending状态,则会变成active状态。
• PPI:(Private Peripheral Interrupt,私有外设中断),该中断来源于core,但是该中断只对指定的core有效,所谓的私有即指对core私有; • SPI:(Shared Peripheral Interrupt,共享外设中断),该中断来源于外部设备,该中断可以对所有的core有效; • SGI:(Software Generated Interrupt,软件中断),用于给其它的core发送中断...