All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] arm_gicv3: Support multiple redistributor regions
@ 2021-09-30 15:08 Peter Maydell
  2021-09-30 15:08 ` [PATCH 1/3] hw/intc/arm_gicv3: Move checking of redist-region-count to arm_gicv3_common_realize Peter Maydell
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Peter Maydell @ 2021-09-30 15:08 UTC (permalink / raw)
  To: qemu-arm, qemu-devel

Our GICv3 QOM interface includes an array property
redist-region-count which allows board models to specify that the
registributor registers are not in a single contiguous range, but
split into multiple pieces.  We implemented this for KVM, but
currently the TCG GICv3 model insists that there is only one region.
You can see the limit being hit with a setup like:
  qemu-system-aarch64 -machine virt,gic-version=3 -smp 124

This patchset adds support for multiple regions to the emulated
GICv3, which means that the virt board now supports more than
123 CPUs for TCG as well as for KVM.

Patches 1 and 2 are smaller initial cleanup; patch 3 is the
bulk of the feature work.

(This turned out to be pretty simple; we should probably have
done it before...)

-- PMM

Peter Maydell (3):
  hw/intc/arm_gicv3: Move checking of redist-region-count to
    arm_gicv3_common_realize
  hw/intc/arm_gicv3: Set GICR_TYPER.Last correctly when
    nb_redist_regions > 1
  hw/intc/arm_gicv3: Support multiple redistributor regions

 include/hw/intc/arm_gicv3_common.h | 14 ++++++--
 hw/intc/arm_gicv3.c                | 12 +------
 hw/intc/arm_gicv3_common.c         | 56 +++++++++++++++++++-----------
 hw/intc/arm_gicv3_kvm.c            | 10 ++----
 hw/intc/arm_gicv3_redist.c         | 40 +++++++++++----------
 5 files changed, 73 insertions(+), 59 deletions(-)

-- 
2.20.1



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

end of thread, other threads:[~2021-10-01 16:37 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-30 15:08 [PATCH 0/3] arm_gicv3: Support multiple redistributor regions Peter Maydell
2021-09-30 15:08 ` [PATCH 1/3] hw/intc/arm_gicv3: Move checking of redist-region-count to arm_gicv3_common_realize Peter Maydell
2021-09-30 21:54   ` Philippe Mathieu-Daudé
2021-10-01  9:18     ` Peter Maydell
2021-10-01 16:24   ` Richard Henderson
2021-09-30 15:08 ` [PATCH 2/3] hw/intc/arm_gicv3: Set GICR_TYPER.Last correctly when nb_redist_regions > 1 Peter Maydell
2021-10-01 16:32   ` Richard Henderson
2021-09-30 15:08 ` [PATCH 3/3] hw/intc/arm_gicv3: Support multiple redistributor regions Peter Maydell
2021-10-01 16:34   ` Richard Henderson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.