[Intel-xe] [PATCH v3 0/3] Add Intel Accelerated Fabric to Xe

David Kershner david.kershner at intel.com
Fri Jun 23 04:12:54 UTC 2023


First patch set introduce the needed Xe infrastructure and includes
the bare bones Intel Acclereated Fabric (IAF) driver.

This is the support code need for the XeLink available on the PVC
devices.

The XeLink accelerated fabric device is a glueless module attached
to a GPU device that provides fabric connectivity between different
GPUs on the same system.

The IAF is part of the GPU (the register space is part of the GPU
PCIe BAR), so it cannot be a completely separate device driver.
    
The Linux kernel provides an interface for handling this type of
device, the Auxiliary Bus API.
    
The Xe and fabric will use the auxiliary bus to enable the fabric
and the Xe to probe and communicate.

v2:
  - Removed unused functions
  - Restored include that was removed by accident
  - Cleaned up blank lines at end of file
v3:
  - Cleaned up kernel-doc comments

David Kershner (3):
  drm/xe: Introduce a module parameter to control IAF
  drm/xe: Introduce Intel Accelerated Fabric device
  drm/xe: Introduce Intel Accelerator fabric driver

 drivers/gpu/drm/xe/Kconfig           |   6 +
 drivers/gpu/drm/xe/Makefile          |   2 +
 drivers/gpu/drm/xe/fabric/Kconfig    |  18 +
 drivers/gpu/drm/xe/fabric/Makefile   |  12 +
 drivers/gpu/drm/xe/fabric/csr.h      | 493 +++++++++++++++++++++
 drivers/gpu/drm/xe/fabric/iaf_drv.h  | 278 ++++++++++++
 drivers/gpu/drm/xe/fabric/main.c     | 632 +++++++++++++++++++++++++++
 drivers/gpu/drm/xe/fabric/sysfs.c    | 114 +++++
 drivers/gpu/drm/xe/fabric/sysfs.h    |  16 +
 drivers/gpu/drm/xe/regs/xe_gt_regs.h |  20 +
 drivers/gpu/drm/xe/xe_device.c       |  13 +-
 drivers/gpu/drm/xe/xe_device_types.h |  25 ++
 drivers/gpu/drm/xe/xe_gt_types.h     |   2 +
 drivers/gpu/drm/xe/xe_iaf.c          | 477 ++++++++++++++++++++
 drivers/gpu/drm/xe/xe_iaf.h          |  39 ++
 drivers/gpu/drm/xe/xe_irq.c          |  28 +-
 drivers/gpu/drm/xe/xe_mmio.c         |   2 +-
 drivers/gpu/drm/xe/xe_pci.c          |   2 +
 drivers/gpu/drm/xe/xe_pci_types.h    |   1 +
 include/drm/intel_iaf_platform.h     | 143 ++++++
 20 files changed, 2320 insertions(+), 3 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/fabric/Kconfig
 create mode 100644 drivers/gpu/drm/xe/fabric/Makefile
 create mode 100644 drivers/gpu/drm/xe/fabric/csr.h
 create mode 100644 drivers/gpu/drm/xe/fabric/iaf_drv.h
 create mode 100644 drivers/gpu/drm/xe/fabric/main.c
 create mode 100644 drivers/gpu/drm/xe/fabric/sysfs.c
 create mode 100644 drivers/gpu/drm/xe/fabric/sysfs.h
 create mode 100644 drivers/gpu/drm/xe/xe_iaf.c
 create mode 100644 drivers/gpu/drm/xe/xe_iaf.h
 create mode 100644 include/drm/intel_iaf_platform.h

-- 
2.35.1



More information about the Intel-xe mailing list