From 9c62fdef63d71d6663d1107864f384720b760f44 Mon Sep 17 00:00:00 2001 From: weidongshan Date: Mon, 24 Jan 2022 19:50:23 +0800 Subject: [PATCH] tmp --- .../doc_pic/10_PCI_PCIe/13_GICv3_LPI机制.md | 28 +++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/IMX6ULL/doc_pic/10_PCI_PCIe/13_GICv3_LPI机制.md b/IMX6ULL/doc_pic/10_PCI_PCIe/13_GICv3_LPI机制.md index 3d4b8bb..44cd550 100644 --- a/IMX6ULL/doc_pic/10_PCI_PCIe/13_GICv3_LPI机制.md +++ b/IMX6ULL/doc_pic/10_PCI_PCIe/13_GICv3_LPI机制.md @@ -61,7 +61,7 @@ GIC V3里新增加了一类中断:LPI(Locality-specific Peripheral Interrupts) ![image-20220124125512793](pic/10_PCI_PCIe/119_gic_v3.png) -对于原来的SPI,它也是可以使用MSI的方式传递的,这个功能时可选的。如果GICv3支持MSI方式的SPI,要产生/清除中断时,操作如下GIC寄存器: +对于原来的SPI,它也是可以使用MSI的方式传递的,这个功能是可选的。如果GICv3支持MSI方式的SPI,要产生/清除中断时,操作如下GIC寄存器: * 产生中断:写寄存器GICD_SETSPI_NSR 或 GICD_SETSPI_SR * 清除中断:写寄存器GICD_CLRSPI_NSR 或 GICD_CLRSPI_SR @@ -69,11 +69,35 @@ GIC V3里新增加了一类中断:LPI(Locality-specific Peripheral Interrupts) 对于LPI中断,有两种触发方式: * 写寄存器GITS_TRANSLATER + * 设备把数据写入GITS_TRANSLATER寄存器,写入的值被称为EventID + * * 写寄存器GICR_SETLPIR -### 1. LPI +#### 2.3 中断号 + +0~1023跟GICv2保存一致。 + +| INTID | 中断类型 | 描述 | +| ------------- | -------- | ------------------------ | +| 0~15 | SGI | | +| 16~31 | PPI | | +| 32~1019 | SPI | 设备发出的中断 | +| 1020~1023 | SPI | 用于特殊目的 | +| 1024~1055 | - | 保留 | +| 1056~1119 | PPI | 扩展的PPI,GICv3.1才支持 | +| 1120~4095 | - | 保留 | +| 4096~5119 | SPI | 扩展的SPI,GICv3.1才支持 | +| 5120~8191 | - | 保留 | +| 8192~芯片实现 | LPI | | + + + + + + +### 2. LPI的触发方式 LPI有两种触发中断的方式: