aboutsummaryrefslogtreecommitdiff
path: root/hw/pc_piix.c
diff options
context:
space:
mode:
authorAnthony PERARD <anthony.perard@citrix.com>2010-10-05 16:40:22 +0100
committerAlexander Graf <agraf@suse.de>2011-05-08 10:10:02 +0200
commitc962247883ffd957dd7f3bccb519803e2775ced2 (patch)
tree4261ed938ca5749aca0a23917692dc10322a105c /hw/pc_piix.c
parent29321335e0407f5f0c3aa415d98566279c232ad8 (diff)
downloadqemu-c962247883ffd957dd7f3bccb519803e2775ced2.zip
qemu-c962247883ffd957dd7f3bccb519803e2775ced2.tar.gz
qemu-c962247883ffd957dd7f3bccb519803e2775ced2.tar.bz2
xen: Add Xen hypercall for sleep state in the cmos_s3 callback.
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw/pc_piix.c')
-rw-r--r--hw/pc_piix.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/hw/pc_piix.c b/hw/pc_piix.c
index 62cdf71..9a22a8a 100644
--- a/hw/pc_piix.c
+++ b/hw/pc_piix.c
@@ -179,7 +179,11 @@ static void pc_init1(ram_addr_t ram_size,
if (pci_enabled && acpi_enabled) {
i2c_bus *smbus;
- cmos_s3 = qemu_allocate_irqs(pc_cmos_set_s3_resume, rtc_state, 1);
+ if (!xen_enabled()) {
+ cmos_s3 = qemu_allocate_irqs(pc_cmos_set_s3_resume, rtc_state, 1);
+ } else {
+ cmos_s3 = qemu_allocate_irqs(xen_cmos_set_s3_resume, rtc_state, 1);
+ }
smi_irq = qemu_allocate_irqs(pc_acpi_smi_interrupt, first_cpu, 1);
/* TODO: Populate SPD eeprom data. */
smbus = piix4_pm_init(pci_bus, piix3_devfn + 3, 0xb100,