Linux kernel lspci输出中的IRQ数

Linux kernel lspci输出中的IRQ数,linux-kernel,interrupt,interrupt-handling,pci,irq,Linux Kernel,Interrupt,Interrupt Handling,Pci,Irq,对于我的一个pci设备,lspci-vvv的输出显示引脚A路由到19。但是lspci-b-vvv的输出给出了255。所有的pci设备在lspci-b-vvv中都给出了irq 255,而对于lspci-vvv,它给出了不同的数字。有人能解释一下吗?当您在lspci命令中插入-b时,它会给出设备看到的中断号。所以这个中断号就是硬件中断号。如果没有-b,它将给您虚拟中断号。因此,这两个数字将不同。-b以总线为中心的视图。显示PCI总线上卡看到的所有IRQ编号和地址,而不是内核看到的。那么,您到底想实现

对于我的一个pci设备,lspci-vvv的输出显示引脚A路由到19。但是lspci-b-vvv的输出给出了255。所有的pci设备在lspci-b-vvv中都给出了irq 255,而对于lspci-vvv,它给出了不同的数字。有人能解释一下吗?

当您在lspci命令中插入-b时,它会给出设备看到的中断号。所以这个中断号就是硬件中断号。如果没有-b,它将给您虚拟中断号。因此,这两个数字将不同。

-b以总线为中心的视图。显示PCI总线上卡看到的所有IRQ编号和地址,而不是内核看到的。那么,您到底想实现什么?我要求所有设备在以总线为中心的视图中显示irq 255是可以的。PCI中断是带外信号,那么您希望看到什么呢?@CL我猜这也取决于特定平台上使用的硬件架构(PIC+PIR)。我只是在x86上运行了上面的程序,得到的数字是ISA范围,而不是255。当我们在lspci中添加-b时,它给出了从设备上看到的irq号。在实际lspci输出中,它是虚拟irq号。