diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2006-12-06 20:14:08 -0500 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2006-12-06 20:14:08 -0500 |
commit | 6020c8f315709a508b027ef6749e85b125190947 (patch) | |
tree | 52dbfc2c2e0322d0aae87cc76e7a961a4126fd46 | |
parent | 3bbf54725467d604698721384d858b5983b87e8f (diff) |
[PATCH] paravirt: Allow disable power management under hypervisor
Two legacy power management modes are much easier to just explicitly disable
when running in paravirtualized mode - neither APM nor PnP is still relevant.
The status of ACPI is still debatable, and noacpi is still a common enough
boot parameter that it is not necessary to explicitly disable ACPI.
Signed-off-by: Zachary Amsden <zach@vmware.com>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Andi Kleen <ak@suse.de>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
-rw-r--r-- | arch/i386/kernel/apm.c | 3 | ||||
-rw-r--r-- | drivers/pnp/pnpbios/core.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/arch/i386/kernel/apm.c b/arch/i386/kernel/apm.c index a60358fe9a49..a97847da9ed5 100644 --- a/arch/i386/kernel/apm.c +++ b/arch/i386/kernel/apm.c | |||
@@ -231,6 +231,7 @@ | |||
231 | #include <asm/uaccess.h> | 231 | #include <asm/uaccess.h> |
232 | #include <asm/desc.h> | 232 | #include <asm/desc.h> |
233 | #include <asm/i8253.h> | 233 | #include <asm/i8253.h> |
234 | #include <asm/paravirt.h> | ||
234 | 235 | ||
235 | #include "io_ports.h" | 236 | #include "io_ports.h" |
236 | 237 | ||
@@ -2235,7 +2236,7 @@ static int __init apm_init(void) | |||
2235 | 2236 | ||
2236 | dmi_check_system(apm_dmi_table); | 2237 | dmi_check_system(apm_dmi_table); |
2237 | 2238 | ||
2238 | if (apm_info.bios.version == 0) { | 2239 | if (apm_info.bios.version == 0 || paravirt_enabled()) { |
2239 | printk(KERN_INFO "apm: BIOS not found.\n"); | 2240 | printk(KERN_INFO "apm: BIOS not found.\n"); |
2240 | return -ENODEV; | 2241 | return -ENODEV; |
2241 | } | 2242 | } |
diff --git a/drivers/pnp/pnpbios/core.c b/drivers/pnp/pnpbios/core.c index 81a6c83d89a6..80066ad792f7 100644 --- a/drivers/pnp/pnpbios/core.c +++ b/drivers/pnp/pnpbios/core.c | |||
@@ -530,7 +530,8 @@ static int __init pnpbios_init(void) | |||
530 | if (check_legacy_ioport(PNPBIOS_BASE)) | 530 | if (check_legacy_ioport(PNPBIOS_BASE)) |
531 | return -ENODEV; | 531 | return -ENODEV; |
532 | #endif | 532 | #endif |
533 | if (pnpbios_disabled || dmi_check_system(pnpbios_dmi_table)) { | 533 | if (pnpbios_disabled || dmi_check_system(pnpbios_dmi_table) || |
534 | paravirt_enabled()) { | ||
534 | printk(KERN_INFO "PnPBIOS: Disabled\n"); | 535 | printk(KERN_INFO "PnPBIOS: Disabled\n"); |
535 | return -ENODEV; | 536 | return -ENODEV; |
536 | } | 537 | } |