diff mbox

[v2,2/2] pc_q35: Initialize Xen.

Message ID 1378135002-10052-3-git-send-email-anthony.perard@citrix.com
State New
Headers show

Commit Message

Anthony PERARD Sept. 2, 2013, 3:16 p.m. UTC
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>

---

Right now, starting an HVM with Q35 chipset those not works because
HVMLoader (the Xen pre-bios) look for the standard chipset i440FX.
Especialy the PCI/ISA bridge.

Error message from HVMLoader:
assertion '(devfn != PCI_ISA_DEVFN) || ((vendor_id == 0x8086) &&
(device_id == 0x7000))'

with PCI_ISA_DEVFN 0x08 /* dev 1, fn 0 */
---
 hw/i386/pc_q35.c | 5 +++++
 1 file changed, 5 insertions(+)
diff mbox

Patch

diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 198c785..51b93f0 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -76,6 +76,11 @@  static void pc_q35_init(QEMUMachineInitArgs *args)
     DeviceState *icc_bridge;
     PcGuestInfo *guest_info;
 
+    if (xen_enabled() && xen_hvm_init(&ram_memory) != 0) {
+        fprintf(stderr, "xen hardware virtual machine initialisation failed\n");
+        exit(1);
+    }
+
     icc_bridge = qdev_create(NULL, TYPE_ICC_BRIDGE);
     object_property_add_child(qdev_get_machine(), "icc-bridge",
                               OBJECT(icc_bridge), NULL);