[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Adding another GPE section to an HVM, causes the original GPE to stop functioning


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: Tom Rotenberg <tom.rotenberg@xxxxxxxxx>
  • Date: Sun, 18 Oct 2009 15:13:19 +0200
  • Delivery-date: Sun, 18 Oct 2009 06:13:49 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=IFS/zdn/A9NuivIqDbAOZHpSIQtYu0RbdIYldnf4xBshAJnxdH/624XmXcf80MTPzp 4tdeoZpDHdBgwXp4TiN9dsfwHqzVa3v0l81qM1i6ahNUWRnjL3aS7820OBZNjLKOC2x0 u7IF0xkdzaKqm1TEkhs1s5Vd2mHn5x/sUZ5dY=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

Hi all,

I am working with Xen 3.4, and i'm using a Windows XP HVM. The problem
i'm experiencing is as follows:
I'm trying to add another GPE section, (for my own ACPI events), and
i'm using the following patch:

--- a/tools/firmware/hvmloader/acpi/static_tables.c     Wed Oct 14
16:58:16 2009 +0200
+++ b/tools/firmware/hvmloader/acpi/static_tables.c     Wed Oct 14
16:58:16 2009 +0200
@@ -65,6 +66,20 @@
    .pm_tmr_len = ACPI_PM_TMR_BLK_BIT_WIDTH / 8,
    .gpe0_blk_len = ACPI_GPE0_BLK_LEN,

/* ----- */
/* My own new GPE block, for my own ACPI events */
+    .gpe1_blk = ACPI_GPE0_BLK_ADDRESS + ACPI_GPE0_BLK_LEN,
+    .gpe1_blk_len = ACPI_GPE0_BLK_LEN,
+
+    .x_gpe1_blk = {
+        .address_space_id    = ACPI_SYSTEM_IO,
+        .register_bit_width  = ACPI_GPE0_BLK_LEN * 8,
+        .register_bit_offset = 0,
+        .address             = ACPI_GPE0_BLK_ADDRESS + ACPI_GPE0_BLK_LEN,
+    },
+    /* ---- */
+
      .p_lvl2_lat = 0x0fff, /* >100,  means we do not support C2 state */
      .p_lvl3_lat = 0x0fff, /* >1000, means we do not support C3 state */
      .iapc_boot_arch = ACPI_8042,

Since i have inserted this new GPE block, the outcome is, that my new
GPE block is responding OK, however, the old GPE block (the regular
Xen gpe0 block), isn't responding anymore - thus i can't
hot-plugqhot-unplug PT devices.

I have analyzed the qemu logs a little bit, and it looks like, since
the addition of the new GPE block, Windows for some reason, only
enables the new gpe block (gpe1 block), and disables the old gpe block
(regular Xen gpe0 block).

Can someone please assist me with this issue?

Tom

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.