代码之家  ›  专栏  ›  技术社区  ›  ransh

内核中有多个设备的PCIe

  •  0
  • ransh  · 技术社区  · 5 年前

    使用时 PCIe 其上有多个设备(例如:串行、CAN总线、i2c等):

    1. 是不是有一个 谁来处理所有这些设备?

    2. 还是应该通过使用 多个pci设备驱动程序 ,每个都使用相同的设备ID和供应商ID?

    这是否意味着我们需要 呼叫“ request_region “因为相同的资源用于不同的驱动程序?

    如果我们使用上述第二种方法:

    那这个呢 打断

    任何人都可以引用内核源代码树中的示例吗?

    1 回复  |  直到 5 年前
        1
  •  1
  •   Sanchayan Maity    5 年前

    基于您的另一个问题,我假设您谈论的是通过PCIe将自定义IP块连接到ARM CPU复合体的FPGA。

    1. PCIe驱动程序不处理任何这些设备。这些IP块的内存映射/空间将通过PCIe公开。当这些外围设备中的任何一个触发IRQ时,IRQ将成为PCIe MSI IRQ,并提供给相应外围设备驱动程序的IRQ处理程序。

    请参阅我对您的另一个问题的回答 here