• Frank Li's avatar
    PCI: endpoint: Support NTB transfer between RC and EP · e35f56bb
    Frank Li authored
    Add NTB function driver and virtual PCI Bus and Virtual NTB driver
    to implement communication between PCIe Root Port and PCIe EP devices
    
    ┌────────────┐         ┌─────────────────────────────────────┐
    │            │         │                                     │
    ├────────────┤         │                      ┌──────────────┤
    │ NTB        │         │                      │ NTB          │
    │ NetDev     │         │                      │ NetDev       │
    ├────────────┤         │                      ├──────────────┤
    │ NTB        │         │                      │ NTB          │
    │ Transfer   │         │                      │ Transfer     │
    ├────────────┤         │                      ├──────────────┤
    │            │         │                      │              │
    │  PCI NTB   │         │                      │              │
    │    EPF     │         │                      │              │
    │   Driver   │         │                      │ PCI Virtual  │
    │            │         ├───────────────┐      │ NTB Driver   │
    │            │         │ PCI EP NTB    │◄────►│              │
    │            │         │  FN Driver    │      │              │
    ├────────────┤         ├───────────────┤      ├──────────────┤
    │            │         │               │      │              │
    │  PCI Bus   │ ◄─────► │  PCI EP Bus   │      │  Virtual PCI │
    │            │  PCI    │               │      │     Bus      │
    └────────────┘         └───────────────┴──────┴──────────────┘
    PCIe Root Port                        PCI EP
    
    This driver includes 3 parts:
     1 PCI EP NTB function driver
     2 Virtual PCI bus
     3 PCI virtual NTB driver, which is loaded only by above virtual PCI bus
    Signed-off-by: default avatarFrank Li <Frank.Li@nxp.com>
    Signed-off-by: default avatarJon Mason <jdmason@kudzu.us>
    e35f56bb
Kconfig 1.13 KB