[PATCH 0/8] Add MSIX functionality to XE
Dani Liberman
dliberman at habana.ai
Wed Jun 26 10:33:37 UTC 2024
This patch set enables MSIX workflow. The main changes are:
1. The code supports both msi and msix, some refactoring had
to be done.
2. Since multiple interrupts are now available there is no need for
interrupt aggregation in HW, hence there are new interrupt
handlers.
3. MSIX interrupts are system resources so an interrupt allocator was
implemented.
4. Adding MSIX infra to exec queues.
5. MSIX in GT also uses memirq, some refactoring had to be done to
enable it.
Dani Liberman (3):
drm/xe/irq: refactor irq flows to support also msix
drm/xe/irq: add msix allocator
drm/xe/exec: adding msix infra to exec queue
Ilia Levi (5):
drm/xe/irq: add hw engine irq handler
drm/xe: move the kernel lrc from hwe to execlist port
drm/xe: move memirq out of vf
drm/xe: msix support preparations - enable memirq
drm/xe: msix support for hw engines
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 | 8 +-
drivers/gpu/drm/xe/xe_device.h | 12 +
drivers/gpu/drm/xe/xe_device_types.h | 12 +-
drivers/gpu/drm/xe/xe_exec_queue.c | 41 +++-
drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 +
drivers/gpu/drm/xe/xe_execlist.c | 21 +-
drivers/gpu/drm/xe/xe_execlist_types.h | 3 +
drivers/gpu/drm/xe/xe_guc.c | 2 +-
drivers/gpu/drm/xe/xe_hw_engine.c | 22 +-
drivers/gpu/drm/xe/xe_hw_engine_types.h | 2 -
drivers/gpu/drm/xe/xe_irq.c | 290 +++++++++++++++++++----
drivers/gpu/drm/xe/xe_irq.h | 7 +
drivers/gpu/drm/xe/xe_lrc.c | 23 +-
drivers/gpu/drm/xe/xe_lrc.h | 2 +-
drivers/gpu/drm/xe/xe_memirq.c | 46 ++--
17 files changed, 391 insertions(+), 108 deletions(-)
--
2.34.1
More information about the Intel-xe
mailing list