Hi all,

Introduce a -M msi= argument to be able to control MSI-X support independently
from ITS, as part of supporting GICv3 + GICv2m platforms.

Remove vms->its as it's no longer needed after that change.

Signed-off-by: Mohamed Mediouni <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
---
  hw/arm/virt-acpi-build.c |   3 +-
  hw/arm/virt.c            | 110 ++++++++++++++++++++++++++++++++-------
  include/hw/arm/virt.h    |   4 +-
  3 files changed, 94 insertions(+), 23 deletions(-)

diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c
index 86024a1a73..f3adb95cfe 100644

I’m trying to clarify the current status of ITS under TCG for the virt machine.(may be a stupid question...)

The virt documentation states: "Note that ITS is not modeled in TCG mode." [1]

However, when looking at hw/arm/virt.c, I don’t immediately see a hard prohibition of ITS under TCG; for example, the MSI/ITS logic appears to allow ITS depending on machine/version settings, and the series also keeps tcg_its.[2] [3]


Could you please confirm the intended behavior today: is ITS expected to be modeled under TCG for the latest virt machine?


[1]: 
https://github.com/qemu/qemu/blob/master/docs/system/arm/virt.rst?plain=1#L46

[2]: https://github.com/qemu/qemu/blob/master/hw/arm/virt.c#L3490

[3]: https://github.com/qemu/qemu/blob/master/hw/arm/virt.c#L3656


Also, Mohamed’s recent work to support "GICv3 + GICv2m" (and to control MSI independently from ITS via -M msi=) looks like a very practical workaround for environments where GICv3 is needed but ITS is unavailable.


Best regards,

Tao


Reply via email to