Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/11] Add MSIX functionality to XE
@ 2024-07-25 10:22 Ilia Levi
  2024-07-25 10:22 ` [PATCH v4 01/11] drm/xe/irq: refactor irq flows to support also msix Ilia Levi
                   ` (18 more replies)
  0 siblings, 19 replies; 20+ messages in thread
From: Ilia Levi @ 2024-07-25 10:22 UTC (permalink / raw)
  To: intel-xe
  Cc: ilia.levi, dliberman, niranjana.vishwanathapura, michal.wajdeczko

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.

v2: 
  - Rebase
  - Fix build and checkpatch errors
  - Fix commit messages

v3:
  - Rebase
  - Code review comments (Niranjana)
  - Proper memirq usage to distinguish interrupt source and status
  - Default MSI-X vector when unique MSI-X is not required

v4:
  - Rebase
  - Minor fix in msix allocator

Dani Liberman (4):
  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
  drm/xe/irq: add default msix

Ilia Levi (7):
  drm/xe: add irq offset of engine instance 0 to hw engine properties
  drm/xe: move memirq out of vf
  drm/xe: memirq infra changes for msix
  drm/xe/irq: add hw engine irq handler
  drm/xe: move the kernel lrc from hwe to execlist port
  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     |  22 +-
 drivers/gpu/drm/xe/xe_exec_queue.c       |  46 +++-
 drivers/gpu/drm/xe/xe_exec_queue_types.h |   2 +
 drivers/gpu/drm/xe/xe_execlist.c         |  18 +-
 drivers/gpu/drm/xe/xe_execlist_types.h   |   2 +
 drivers/gpu/drm/xe/xe_guc.c              |   2 +-
 drivers/gpu/drm/xe/xe_hw_engine.c        |  50 ++--
 drivers/gpu/drm/xe/xe_hw_engine_types.h  |   4 +-
 drivers/gpu/drm/xe/xe_irq.c              | 324 ++++++++++++++++++++---
 drivers/gpu/drm/xe/xe_irq.h              |   7 +
 drivers/gpu/drm/xe/xe_lrc.c              |  32 ++-
 drivers/gpu/drm/xe/xe_lrc.h              |   2 +-
 drivers/gpu/drm/xe/xe_memirq.c           | 123 +++++----
 drivers/gpu/drm/xe/xe_memirq.h           |   8 +-
 drivers/gpu/drm/xe/xe_memirq_types.h     |   6 +-
 19 files changed, 541 insertions(+), 133 deletions(-)

-- 
2.43.2


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2024-07-25 13:35 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-25 10:22 [PATCH v4 00/11] Add MSIX functionality to XE Ilia Levi
2024-07-25 10:22 ` [PATCH v4 01/11] drm/xe/irq: refactor irq flows to support also msix Ilia Levi
2024-07-25 10:22 ` [PATCH v4 02/11] drm/xe/irq: add msix allocator Ilia Levi
2024-07-25 10:22 ` [PATCH v4 03/11] drm/xe: add irq offset of engine instance 0 to hw engine properties Ilia Levi
2024-07-25 10:22 ` [PATCH v4 04/11] drm/xe: move memirq out of vf Ilia Levi
2024-07-25 10:22 ` [PATCH v4 05/11] drm/xe: memirq infra changes for msix Ilia Levi
2024-07-25 10:22 ` [PATCH v4 06/11] drm/xe/irq: add hw engine irq handler Ilia Levi
2024-07-25 10:22 ` [PATCH v4 07/11] drm/xe: move the kernel lrc from hwe to execlist port Ilia Levi
2024-07-25 10:22 ` [PATCH v4 08/11] drm/xe: msix support preparations - enable memirq Ilia Levi
2024-07-25 10:22 ` [PATCH v4 09/11] drm/xe/exec: adding msix infra to exec queue Ilia Levi
2024-07-25 10:22 ` [PATCH v4 10/11] drm/xe/irq: add default msix Ilia Levi
2024-07-25 10:22 ` [PATCH v4 11/11] drm/xe: msix support for hw engines Ilia Levi
2024-07-25 10:29 ` ✓ CI.Patch_applied: success for Add MSIX functionality to XE (rev6) Patchwork
2024-07-25 10:29 ` ✓ CI.checkpatch: " Patchwork
2024-07-25 10:30 ` ✓ CI.KUnit: " Patchwork
2024-07-25 10:50 ` ✓ CI.Build: " Patchwork
2024-07-25 10:52 ` ✓ CI.Hooks: " Patchwork
2024-07-25 10:53 ` ✓ CI.checksparse: " Patchwork
2024-07-25 11:39 ` ✗ CI.BAT: failure " Patchwork
2024-07-25 13:35 ` ✗ CI.FULL: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox