【原创】Linux PCI驱动框架分析(一) - LoyenWang - 博客园
【原创】Linux PCI驱动框架分析(二) - LoyenWang - 博客园
【原创】Linux PCI驱动框架分析(三) - LoyenWang - 博客园
pcie的pci_create_root_bus 分析_jason的笔记-CSDN博客
pcie的pci_scan_device_jason的笔记-CSDN博客
pcie的pci_scan_bus_jason的笔记-CSDN博客
pcie bar资源的读取和remap_jason的笔记-CSDN博客
理解linux pci 扫描流程_moon146的专栏-CSDN博客_pci_assign_resource
PCIe学习笔记之pcie初始化枚举和资源分配流程代码分析_Hober-CSDN博客_pcie 初始化流程
【67】PCIe Power Management和linux对PME的处理_linjiasen的博客-CSDN博客_linux pcie电源管理
INTx中断如何申请分配中断?
当pcie EP驱动加载时,调用 pci_bus_type总线 pci_device_probe处理函数,linux 4.9.0内核intx中断注册过程如下:
pci_device_probe ==> pcibios_alloc_irq ==>
pci_dev->dev->irq = of_irq_parse_and_map_pci(dev, 0, 0)
of_irq_parse_pci(dev, &oriq);
irq_create_of_mapping(&oriq)
通过设备枚举在EP config space中配置的Interrupt Pin(HW irq ID)解析 interrupt-map 和 interrupt-map-mask 获取真实的irq domain 并建立当前irqdomain的物理中断和linux irq中断关联。