]> git.proxmox.com Git - mirror_qemu.git/commitdiff
Merge remote-tracking branch 'sstabellini/for_1.1_rc3' into staging
authorAnthony Liguori <aliguori@us.ibm.com>
Tue, 29 May 2012 09:32:13 +0000 (04:32 -0500)
committerAnthony Liguori <aliguori@us.ibm.com>
Tue, 29 May 2012 09:32:13 +0000 (04:32 -0500)
* sstabellini/for_1.1_rc3:
  Call xc_domain_shutdown with the reboot flag when the guest requests a reboot.
  xen: Fix PV-on-HVM
  xen_disk: properly update stats in ioreq_release()
  xen_disk: use bdrv_aio_flush instead of bdrv_flush
  xen_disk: remove syncwrite option
  xen: disable rtc_clock
  xen: do not initialize the interval timer and PCSPK emulator

1  2 
hw/pc.c

diff --combined hw/pc.c
index 967c17a3fe52238445f4855b34ec62527f1ceb83,a752a6b2fc63dd2685587fb25b9c7aa96525b032..e81a06c161067b49d5dffd3e2558992016f2bd4b
+++ b/hw/pc.c
@@@ -47,6 -47,7 +47,7 @@@
  #include "ui/qemu-spice.h"
  #include "memory.h"
  #include "exec-memory.h"
+ #include "arch_init.h"
  
  /* output Bochs bios info messages */
  //#define DEBUG_BIOS
@@@ -382,7 -383,7 +383,7 @@@ void pc_cmos_init(ram_addr_t ram_size, 
      if (floppy) {
          fdc_get_bs(fd, floppy);
          for (i = 0; i < 2; i++) {
 -            if (fd[i] && bdrv_is_inserted(fd[i])) {
 +            if (fd[i]) {
                  bdrv_get_floppy_geometry_hint(fd[i], &nb_heads, &max_track,
                                                &last_sect, FDRIVE_DRV_NONE,
                                                &fd_type[i], &rate);
@@@ -1097,7 -1098,7 +1098,7 @@@ void pc_basic_device_init(ISABus *isa_b
      qemu_irq pit_alt_irq = NULL;
      qemu_irq rtc_irq = NULL;
      qemu_irq *a20_line;
-     ISADevice *i8042, *port92, *vmmouse, *pit;
+     ISADevice *i8042, *port92, *vmmouse, *pit = NULL;
      qemu_irq *cpu_exit_irq;
  
      register_ioport_write(0x80, 1, 1, ioport80_write, NULL);
  
      qemu_register_boot_set(pc_boot_set, *rtc_state);
  
-     if (kvm_irqchip_in_kernel()) {
-         pit = kvm_pit_init(isa_bus, 0x40);
-     } else {
-         pit = pit_init(isa_bus, 0x40, pit_isa_irq, pit_alt_irq);
-     }
-     if (hpet) {
-         /* connect PIT to output control line of the HPET */
-         qdev_connect_gpio_out(hpet, 0, qdev_get_gpio_in(&pit->qdev, 0));
+     if (!xen_enabled()) {
+         if (kvm_irqchip_in_kernel()) {
+             pit = kvm_pit_init(isa_bus, 0x40);
+         } else {
+             pit = pit_init(isa_bus, 0x40, pit_isa_irq, pit_alt_irq);
+         }
+         if (hpet) {
+             /* connect PIT to output control line of the HPET */
+             qdev_connect_gpio_out(hpet, 0, qdev_get_gpio_in(&pit->qdev, 0));
+         }
+         pcspk_init(isa_bus, pit);
      }
-     pcspk_init(isa_bus, pit);
  
      for(i = 0; i < MAX_SERIAL_PORTS; i++) {
          if (serial_hds[i]) {