*  Jan Kiszka <jan.kiszka@siemens.com>
  */
 
+#include <linux/acpi_pmtmr.h>
 #include <linux/kernel.h>
 #include <asm/apic.h>
 #include <asm/cpu.h>
 
        if (setup_data.compatible_version > JAILHOUSE_SETUP_REQUIRED_VERSION)
                panic("Jailhouse: Unsupported setup data structure");
+
+       pmtmr_ioport = setup_data.pm_timer_address;
+       pr_debug("Jailhouse: PM-Timer IO Port: %#x\n", pmtmr_ioport);
 }
 
 bool jailhouse_paravirt(void)
 
          i.e., segment/bus/device/function tuples, with physical slots in
          the system.  If you are unsure, say N.
 
-config X86_PM_TIMER
-       bool "Power Management Timer Support" if EXPERT
-       depends on X86
-       default y
-       help
-         The Power Management Timer is available on all ACPI-capable,
-         in most cases even if ACPI is unusable or blacklisted.
-
-         This timing source is not affected by power management features
-         like aggressive processor idling, throttling, frequency and/or
-         voltage scaling, unlike the commonly used Time Stamp Counter
-         (TSC) timing source.
-
-         You should nearly always say Y here because many modern
-         systems require this timer. 
-
 config ACPI_CONTAINER
        bool "Container and Module Devices"
        default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU)
          using this, are probed.
 
 endif  # ACPI
+
+config X86_PM_TIMER
+       bool "Power Management Timer Support" if EXPERT
+       depends on X86 && (ACPI || JAILHOUSE_GUEST)
+       default y
+       help
+         The Power Management Timer is available on all ACPI-capable,
+         in most cases even if ACPI is unusable or blacklisted.
+
+         This timing source is not affected by power management features
+         like aggressive processor idling, throttling, frequency and/or
+         voltage scaling, unlike the commonly used Time Stamp Counter
+         (TSC) timing source.
+
+         You should nearly always say Y here because many modern
+         systems require this timer.