mbox series

[v4,0/3] Add extioi virt extension support

Message ID 20240528083855.1912757-1-gaosong@loongson.cn
Headers show
Series Add extioi virt extension support | expand

Message

Song Gao May 28, 2024, 8:38 a.m. UTC
On LoongArch, IRQs can be routed to four vcpus with hardware extioi.
This patch adds the extioi virt extension support so that the IRQ can
route to 256 vcpus.

v4:
- Put patch3 ahead of patch2;
- patch1 Introduce two IRQ model(Extended IRQ model and Virt extended IRQ model);
- Link to v3: https://patchew.org/QEMU/20240521123225.231072-1-gaosong@loongson.cn/

v3:
- Split patch2 to two small patch.
- remove unused code.
- loongarch_extioi_reset() clear status without checking virt extioi
  features.
- Link to v2: https://patchew.org/QEMU/20240514090756.988096-1-gaosong@loongson.cn/

v2:
- Split the patch to two small patch.
- Drop 'RFC' title. extioi virt extension suport only enable on kvm
  mode and  the extioi driver need patch[1].
  but this series do not affect the old codes in any way.
- Link to v1: https://lore.kernel.org/all/20240116022526.498613-1-gaosong@loongson.cn/#r

[1]: https://gitee.com/openeuler/kernel/commit/5d97cff72f91f4f20a536efd60eca75bfcb78a64

Thanks.
Song Gao

Song Gao (3):
  hw/intc/loongarch_extioi: Add extioi virt extension definition
  hw/loongarch/virt: Use MemTxAttrs interface for misc ops
  hw/loongarch/virt: Enable extioi virt extension

 include/hw/intc/loongarch_extioi.h |  21 ++++
 include/hw/loongarch/virt.h        |   1 +
 target/loongarch/cpu.h             |   1 +
 hw/intc/loongarch_extioi.c         |  88 +++++++++++++-
 hw/loongarch/virt.c                | 182 +++++++++++++++++++++++------
 5 files changed, 256 insertions(+), 37 deletions(-)