[PATCH v5 0/5] MSI-X support

Ilia Levi ilia.levi at intel.com
Thu Nov 28 12:53:40 UTC 2024


This patch set introduces MSI-X workflow.
This is a rework of previously published series 135422
(https://patchwork.freedesktop.org/series/135422/).

It includes:
1. Basic MSI-X workflow with GuC-to-host and "default MSI-X"
   interrupt handlers.
2. MSI-X interrupts allocator to allow dynamic resource management.
3. uAPI flag to xe_exec_queue_create_ioctl that allows creating
   an exec queue with its own MSI-X interrupt.


v2: Rebase + fix kernel doc issue
v3: Rebase + fix sriov_basic test failure
v4: Another attempt to fix sriov flows
v5:
 - Rebase
 - Optimize irq.enabled access (additional patch)
 - Check irq.enabled in new IRQ handlers
 - Code review comments (Piotr)

Dani Liberman (1):
  drm/xe/uapi: Support requesting unique MSI-X for exec queue

Ilia Levi (4):
  drm/xe: Make irq enabled flag atomic
  drm/xe/irq: Separate MSI and MSI-X flows
  drm/xe: Initial MSI-X support for HW engines
  drm/xe/irq: Manage MSI-X interrupts allocation

 drivers/gpu/drm/xe/display/ext/i915_irq.c |   2 +-
 drivers/gpu/drm/xe/regs/xe_engine_regs.h  |   3 +
 drivers/gpu/drm/xe/regs/xe_lrc_layout.h   |   3 +
 drivers/gpu/drm/xe/xe_device.c            |   4 +-
 drivers/gpu/drm/xe/xe_device.h            |   3 +-
 drivers/gpu/drm/xe/xe_device_types.h      |  10 +-
 drivers/gpu/drm/xe/xe_exec_queue.c        |  59 +++-
 drivers/gpu/drm/xe/xe_exec_queue_types.h  |   4 +
 drivers/gpu/drm/xe/xe_execlist.c          |  10 +-
 drivers/gpu/drm/xe/xe_hw_engine.c         |   7 +-
 drivers/gpu/drm/xe/xe_irq.c               | 360 ++++++++++++++++++----
 drivers/gpu/drm/xe/xe_irq.h               |   9 +
 drivers/gpu/drm/xe/xe_lrc.c               |  24 +-
 drivers/gpu/drm/xe/xe_lrc.h               |   2 +-
 include/uapi/drm/xe_drm.h                 |   8 +-
 15 files changed, 432 insertions(+), 76 deletions(-)

-- 
2.43.2



More information about the Intel-xe mailing list