1、 MSI中断
MSI中断本质上是一个memory write,memory write的地址就是设备配置空间的MSI address寄存器的值,memory write的数据就是设备配置空间的MSI data寄存器的值。
Message address寄存器和message data寄存器是调用pci_enable_msi时,系统软件填入的。
也就是说,一个设备想产生一个MSI中断的话,只需要使用配置空间的message address寄存器和message data寄存器发起一个memory write的请求,即往message address寄存器写入memory data。

在X86系统下,message address对应的LAPIC的地址。

发往0FEEXXXX都会触发CPU的中断消息。

发送的具体数据格式如下,bit7-0即为中断向量编号:

本文解析了MSI中断的工作原理,指出它是通过内存写操作来触发的,涉及PCI配置空间的MSIaddress和MSIdata寄存器,以及X86系统中对应LAPIC的地址。重点介绍了如何通过设备配置实现中断请求和中断向量编号的设置。
2772

被折叠的 条评论
为什么被折叠?



