]> git.proxmox.com Git - qemu.git/blobdiff - hw/xen_machine_pv.c
softmmu: move include files to include/sysemu/
[qemu.git] / hw / xen_machine_pv.c
index f59f633a8c753d82f4875d2265421d4c31781b0c..9feecd5a2797a3b65147f7e0d79ee084bce841a5 100644 (file)
 
 #include "hw.h"
 #include "pc.h"
-#include "sysemu.h"
 #include "boards.h"
 #include "xen_backend.h"
 #include "xen_domainbuild.h"
+#include "sysemu/blockdev.h"
 
-uint32_t xen_domid;
-enum xen_mode xen_mode = XEN_EMULATE;
-
-static void xen_init_pv(ram_addr_t ram_size, int vga_ram_size,
-                       const char *boot_device,
-                       const char *kernel_filename,
-                       const char *kernel_cmdline,
-                       const char *initrd_filename,
-                       const char *cpu_model)
+static void xen_init_pv(QEMUMachineInitArgs *args)
 {
-    CPUState *env;
-    int i, index;
+    const char *cpu_model = args->cpu_model;
+    const char *kernel_filename = args->kernel_filename;
+    const char *kernel_cmdline = args->kernel_cmdline;
+    const char *initrd_filename = args->initrd_filename;
+    X86CPU *cpu;
+    CPUX86State *env;
+    DriveInfo *dinfo;
+    int i;
 
     /* Initialize a dummy CPU */
     if (cpu_model == NULL) {
@@ -50,7 +48,8 @@ static void xen_init_pv(ram_addr_t ram_size, int vga_ram_size,
         cpu_model = "qemu32";
 #endif
     }
-    env = cpu_init(cpu_model);
+    cpu = cpu_x86_init(cpu_model);
+    env = &cpu->env;
     env->halted = 1;
 
     /* Initialize backend core & drivers */
@@ -90,10 +89,10 @@ static void xen_init_pv(ram_addr_t ram_size, int vga_ram_size,
 
     /* configure disks */
     for (i = 0; i < 16; i++) {
-        index = drive_get_index(IF_XEN, 0, i);
-        if (index == -1)
+        dinfo = drive_get(IF_XEN, 0, i);
+        if (!dinfo)
             continue;
-        xen_config_dev_blk(drives_table + index);
+        xen_config_dev_blk(dinfo);
     }
 
     /* configure nics */
@@ -115,6 +114,7 @@ static QEMUMachine xenpv_machine = {
     .desc = "Xen Para-virtualized PC",
     .init = xen_init_pv,
     .max_cpus = 1,
+    .default_machine_opts = "accel=xen",
 };
 
 static void xenpv_machine_init(void)