Hello everyone, I am currently working on adding MSI support to virtio-pci on ARM with Xen. As far as I understand QEMU Xen ARM machine that is used for virtio-pci device emulation does not initialize any interrupt controllers. And that makes it somewhat unclear what is the best approach to adding the MSI support. So, I would appreciate some thoughts on this. To trigger the MSI interrupt in Xen guests we basically need to call a single DMOP, which I am also implementing.
So far, I have come up with 3 possible approaches: 1. Hooking up the existing GIC code to the Xen Arm machine and extending it with the DMOP call. 2. Writing some new barebones GIC implementation with only the required methods (something similar to xen_apic.c). 3. Just hooking up the DMOP call to the existing PCI code based on xen_enabled() check. Maybe there is something else that is better that I have missed. Best regards Mykyta