mbox series

[00/14] XIVE2 changes to support Group and Crowd operations

Message ID 20241015211329.21113-1-kowal@linux.ibm.com
Headers show
Series XIVE2 changes to support Group and Crowd operations | expand

Message

Mike Kowal Oct. 15, 2024, 9:13 p.m. UTC
XIVE2 has the concepts of a Group of interrupts and a Crowd of interrupts
(where a crowd is a group of Groups). These patch sets are associated with:
 - NVGC tables
 - Group/Crowd level notification
 - Incrementing backlog countets
 - Backlog processing
 - NVPG and NVC Bar MMIO operations
 - Group/Crowd testing
 - ESB Escalation
 - Pool interrupt testing


Frederic Barrat (10):
  ppc/xive2: Update NVP save/restore for group attributes
  ppc/xive2: Add grouping level to notification
  ppc/xive2: Support group-matching when looking for target
  ppc/xive2: Add undelivered group interrupt to backlog
  ppc/xive2: Process group backlog when pushing an OS context
  ppc/xive2: Process group backlog when updating the CPPR
  qtest/xive: Add group-interrupt test
  Add support for MMIO operations on the  NVPG/NVC BAR
  ppc/xive2: Support crowd-matching when looking for target
  ppc/xive2: Check crowd backlog when scanning group backlog

Glenn Miles (4):
  pnv/xive: Only support crowd size of 0, 2, 4 and 16
  pnv/xive: Support ESB Escalation
  pnv/xive: Fix problem with treating NVGC as a NVP
  qtest/xive: Add test of pool interrupts

 include/hw/ppc/xive.h            |  35 +-
 include/hw/ppc/xive2.h           |  19 +-
 include/hw/ppc/xive2_regs.h      |  25 +-
 include/hw/ppc/xive_regs.h       |  20 +-
 tests/qtest/pnv-xive2-common.h   |   1 +
 hw/intc/pnv_xive.c               |   5 +-
 hw/intc/pnv_xive2.c              | 161 +++++--
 hw/intc/spapr_xive.c             |   3 +-
 hw/intc/xive.c                   | 182 +++++---
 hw/intc/xive2.c                  | 741 +++++++++++++++++++++++++++----
 hw/ppc/pnv.c                     |  31 +-
 hw/ppc/spapr.c                   |   4 +-
 tests/qtest/pnv-xive2-nvpg_bar.c | 154 +++++++
 tests/qtest/pnv-xive2-test.c     | 240 ++++++++++
 hw/intc/trace-events             |   6 +-
 tests/qtest/meson.build          |   3 +-
 16 files changed, 1440 insertions(+), 190 deletions(-)
 create mode 100644 tests/qtest/pnv-xive2-nvpg_bar.c