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-gaos...@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-gaos...@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-gaos...@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(-)

-- 
2.34.1


Reply via email to