diff options
| author | Peter Maydell <peter.maydell@linaro.org> | 2024-10-04 12:24:26 +0100 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2024-10-04 12:24:26 +0100 |
| commit | 33dab2dda093a330656778c48ce88fb9c446cbf9 (patch) | |
| tree | 4a2d797ec28a24eaffa874d1704af33fb386ae9e /hw/arm/xen-pvh.c | |
| parent | 423be09ab9492735924e73a2d36069784441ebc6 (diff) | |
| parent | ca9275a4b11aced3074219d1712e29fce5036f72 (diff) | |
| download | focaccia-qemu-33dab2dda093a330656778c48ce88fb9c446cbf9.tar.gz focaccia-qemu-33dab2dda093a330656778c48ce88fb9c446cbf9.zip | |
Merge tag 'edgar/xen-queue-2024-10-03-v2.for-upstream' of https://gitlab.com/edgar.iglesias/qemu into staging
Edgars Xen Queue. # -----BEGIN PGP SIGNATURE----- # # iQEzBAABCgAdFiEErET+3BT38evtv0FRKcWWeA9ryoMFAmb+1rIACgkQKcWWeA9r # yoN67QgAgg4eTLF00cXBGp+hCOs+Oy9go7MHkaiCrKRHde0f82wnPLH6BfaVfafd # 3dn+y2MAv+v/gjrqcgQHlKOojoYwkBrvIc0yMXOK7GPwS/ppA4+L0ZSyONFcoM7j # 1b7pfXn8yiJnRRWvSaM81nLWj3CgUR/piTMao72jBM0t+oVgY3ZEcidFlN2rcQwj # 27BSNEF+CTYyA+fXGV0EgIjTLWHvvUR+WNO6jRsTpLK+/2tl1idoLm8t7hihfoN8 # MW34R6RwmNv0PYCsz9+LCPUW+KbrA2w8YX+Rq1W4UVCm5BocibQ4Vwrn2bLAOgLP # i7RwTtew+avZoQvA8lM3+yU8vo+Q+A== # =95Ye # -----END PGP SIGNATURE----- # gpg: Signature made Thu 03 Oct 2024 18:38:58 BST # gpg: using RSA key AC44FEDC14F7F1EBEDBF415129C596780F6BCA83 # gpg: Good signature from "Edgar E. Iglesias (Xilinx key) <edgar.iglesias@xilinx.com>" [unknown] # gpg: aka "Edgar E. Iglesias <edgar.iglesias@gmail.com>" [full] # Primary key fingerprint: AC44 FEDC 14F7 F1EB EDBF 4151 29C5 9678 0F6B CA83 * tag 'edgar/xen-queue-2024-10-03-v2.for-upstream' of https://gitlab.com/edgar.iglesias/qemu: hw/arm: xenpvh: Enable PCI for ARM PVH hw/xen: xenpvh: Add pci-intx-irq-base property hw/xen: xenpvh: Disable buffered IOREQs for ARM hw/xen: Expose handle_bufioreq in xen_register_ioreq hw/xen: Remove deadcode Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/arm/xen-pvh.c')
| -rw-r--r-- | hw/arm/xen-pvh.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/hw/arm/xen-pvh.c b/hw/arm/xen-pvh.c index 04cb9855af..33f0dd5982 100644 --- a/hw/arm/xen-pvh.c +++ b/hw/arm/xen-pvh.c @@ -39,6 +39,16 @@ static void xen_arm_instance_init(Object *obj) VIRTIO_MMIO_DEV_SIZE }; } +static void xen_pvh_set_pci_intx_irq(void *opaque, int intx_irq, int level) +{ + XenPVHMachineState *s = XEN_PVH_MACHINE(opaque); + int irq = s->cfg.pci_intx_irq_base + intx_irq; + + if (xendevicemodel_set_irq_level(xen_dmod, xen_domid, irq, level)) { + error_report("xendevicemodel_set_pci_intx_level failed"); + } +} + static void xen_arm_machine_class_init(ObjectClass *oc, void *data) { XenPVHMachineClass *xpc = XEN_PVH_MACHINE_CLASS(oc); @@ -66,7 +76,14 @@ static void xen_arm_machine_class_init(ObjectClass *oc, void *data) */ mc->max_cpus = GUEST_MAX_VCPUS; + /* Xen/ARM does not use buffered IOREQs. */ + xpc->handle_bufioreq = HVM_IOREQSRV_BUFIOREQ_OFF; + + /* PCI INTX delivery. */ + xpc->set_pci_intx_irq = xen_pvh_set_pci_intx_irq; + /* List of supported features known to work on PVH ARM. */ + xpc->has_pci = true; xpc->has_tpm = true; xpc->has_virtio_mmio = true; |