在2024年5月21日五月 下午1:32,Song Gao写道:
> 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.
Hi Song,
Sorry for chime in here, I'm a little bit confused by this series, can
you give me a little bit of context behind?
I don't see this functionality on 3A5000/3A6000's user manual, so is this
some sort of undocumented hardware feature?
I checked openEuler kernel patch you referred, it seems like this applies to
hypervisor mode only. I suppose it should be handled by KVM subsystem in
kernel, why do we need this in user mode device emulation?
Currently, LoongArch's in-kernel irqchip functionality does not include such
feature, can we see KVM side support for this, or at least a draft
specification?
Thanks
- Jiaxun
>
> 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: Enable extioi virt extension
> hw/loongarch/virt: Use MemTxAttrs interface for misc ops
>
> include/hw/intc/loongarch_extioi.h | 21 ++++++
> include/hw/loongarch/virt.h | 2 +
> target/loongarch/cpu.h | 1 +
> hw/intc/loongarch_extioi.c | 88 +++++++++++++++++++++-
> hw/loongarch/virt.c | 116 +++++++++++++++++++++++++----
> 5 files changed, 210 insertions(+), 18 deletions(-)
>
> --
> 2.34.1
--
- Jiaxun