diff options
author | Zhao Yakui <yakui.zhao@intel.com> | 2008-08-11 02:59:59 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2008-10-22 18:00:13 -0400 |
commit | 6415e12ba0f92a54f02d9c4ecaa3c82f35f3d335 (patch) | |
tree | add3587c390f4afce6c1f2c3e7e95f5117fd7432 /drivers/acpi/bus.c | |
parent | f5adfaa372c76423b6e8e4727a9701330374f364 (diff) |
ACPI: Add DMI check to disable power state check in power transition
Add the DMI check to disable power check in the course of device power
transistion.
http://bugzilla.kernel.org/show_bug.cgi?id=11000
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Li Shaohua <shaohua.li@intel.com>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/bus.c')
-rw-r--r-- | drivers/acpi/bus.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index 91bdeb3b081e..945cd2f2807d 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c | |||
@@ -48,6 +48,23 @@ EXPORT_SYMBOL(acpi_root_dir); | |||
48 | 48 | ||
49 | #define STRUCT_TO_INT(s) (*((int*)&s)) | 49 | #define STRUCT_TO_INT(s) (*((int*)&s)) |
50 | 50 | ||
51 | static int set_power_nocheck(const struct dmi_system_id *id) | ||
52 | { | ||
53 | printk(KERN_NOTICE PREFIX "%s detected - " | ||
54 | "disable power check in power transistion\n", id->ident); | ||
55 | acpi_power_nocheck = 1; | ||
56 | return 0; | ||
57 | } | ||
58 | static struct dmi_system_id __cpuinitdata power_nocheck_dmi_table[] = { | ||
59 | { | ||
60 | set_power_nocheck, "HP Pavilion 05", { | ||
61 | DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"), | ||
62 | DMI_MATCH(DMI_SYS_VENDOR, "HP Pavilion 05"), | ||
63 | DMI_MATCH(DMI_PRODUCT_VERSION, "2001211RE101GLEND") }, NULL}, | ||
64 | {}, | ||
65 | }; | ||
66 | |||
67 | |||
51 | /* -------------------------------------------------------------------------- | 68 | /* -------------------------------------------------------------------------- |
52 | Device Management | 69 | Device Management |
53 | -------------------------------------------------------------------------- */ | 70 | -------------------------------------------------------------------------- */ |
@@ -830,7 +847,11 @@ static int __init acpi_init(void) | |||
830 | } | 847 | } |
831 | } else | 848 | } else |
832 | disable_acpi(); | 849 | disable_acpi(); |
833 | 850 | /* | |
851 | * If the laptop falls into the DMI check table, the power state check | ||
852 | * will be disabled in the course of device power transistion. | ||
853 | */ | ||
854 | dmi_check_system(power_nocheck_dmi_table); | ||
834 | return result; | 855 | return result; |
835 | } | 856 | } |
836 | 857 | ||