我正在研究 PCIe Linux 驱动程序。我想为设备注册一个 ISR。 Linux系统分配给设备的IRQ号是16,其他(USB主机 Controller )设备也共享这个IRQ号。 (通过 lspci -v 检查)。这是一个基于引脚的中断。
通过在线搜索,我发现几乎所有 PCI 驱动程序示例仅提供 IRQF_SHARED 作为 API request_irq() 中的标志,而没有提供任何其他标志来提及高/低级中断等行为。
我的问题是,Linux 内核如何确定共享中断(对于 PCIe 设备)的行为,是低级还是高级?
最佳答案
PCIe 使用 MSI,因此无需关注高/低电平。传统的 PCI 卡使用电平触发中断,但大多数设备使用低电平有效信号,因此驱动程序编写者无权修改/调整。
关于linux - PCIe中断处理linux内核,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43236314/