aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/bus.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-06-23 10:52:36 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-23 10:52:36 -0400
commit37224470c8c6d90a4062e76a08d4dc1fcf91fc89 (patch)
tree627f537177bf8e951c12bec04c4a85f0125f5ece /drivers/acpi/bus.c
parente83319510b04dd51a60da8a0b4ccf8b92b3ab1ad (diff)
parentae6c859b7dcd708efadf1c76279c33db213e3506 (diff)
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (65 commits) ACPI: suppress power button event on S3 resume ACPI: resolve merge conflict between sem2mutex and processor_perflib.c ACPI: use for_each_possible_cpu() instead of for_each_cpu() ACPI: delete newly added debugging macros in processor_perflib.c ACPI: UP build fix for bugzilla-5737 Enable P-state software coordination via _PDC P-state software coordination for speedstep-centrino P-state software coordination for acpi-cpufreq P-state software coordination for ACPI core ACPI: create acpi_thermal_resume() ACPI: create acpi_fan_suspend()/acpi_fan_resume() ACPI: pass pm_message_t from acpi_device_suspend() to root_suspend() ACPI: create acpi_device_suspend()/acpi_device_resume() ACPI: replace spin_lock_irq with mutex for ec poll mode ACPI: Allow a WAN module enable/disable on a Thinkpad X60. sem2mutex: acpi, acpi_link_lock ACPI: delete unused acpi_bus_drivers_lock sem2mutex: drivers/acpi/processor_perflib.c ACPI add ia64 exports to build acpi_memhotplug as a module ACPI: asus_acpi_init(): propagate correct return value ... Manual resolve of conflicts in: arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c arch/i386/kernel/cpu/cpufreq/speedstep-centrino.c include/acpi/processor.h
Diffstat (limited to 'drivers/acpi/bus.c')
-rw-r--r--drivers/acpi/bus.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c
index 606f8733a776..dd3983cece92 100644
--- a/drivers/acpi/bus.c
+++ b/drivers/acpi/bus.c
@@ -43,7 +43,7 @@ ACPI_MODULE_NAME("acpi_bus")
43extern void __init acpi_pic_sci_set_trigger(unsigned int irq, u16 trigger); 43extern void __init acpi_pic_sci_set_trigger(unsigned int irq, u16 trigger);
44#endif 44#endif
45 45
46FADT_DESCRIPTOR acpi_fadt; 46struct fadt_descriptor acpi_fadt;
47EXPORT_SYMBOL(acpi_fadt); 47EXPORT_SYMBOL(acpi_fadt);
48 48
49struct acpi_device *acpi_root; 49struct acpi_device *acpi_root;
@@ -205,12 +205,14 @@ int acpi_bus_set_power(acpi_handle handle, int state)
205 * Get device's current power state if it's unknown 205 * Get device's current power state if it's unknown
206 * This means device power state isn't initialized or previous setting failed 206 * This means device power state isn't initialized or previous setting failed
207 */ 207 */
208 if (device->power.state == ACPI_STATE_UNKNOWN) 208 if (!device->flags.force_power_state) {
209 acpi_bus_get_power(device->handle, &device->power.state); 209 if (device->power.state == ACPI_STATE_UNKNOWN)
210 if (state == device->power.state) { 210 acpi_bus_get_power(device->handle, &device->power.state);
211 ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Device is already at D%d\n", 211 if (state == device->power.state) {
212 state)); 212 ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Device is already at D%d\n",
213 return_VALUE(0); 213 state));
214 return_VALUE(0);
215 }
214 } 216 }
215 if (!device->power.states[state].flags.valid) { 217 if (!device->power.states[state].flags.valid) {
216 ACPI_DEBUG_PRINT((ACPI_DB_WARN, "Device does not support D%d\n", 218 ACPI_DEBUG_PRINT((ACPI_DB_WARN, "Device does not support D%d\n",
@@ -596,6 +598,8 @@ void __init acpi_early_init(void)
596 if (acpi_disabled) 598 if (acpi_disabled)
597 return_VOID; 599 return_VOID;
598 600
601 printk(KERN_INFO PREFIX "Core revision %08x\n", ACPI_CA_VERSION);
602
599 /* enable workarounds, unless strict ACPI spec. compliance */ 603 /* enable workarounds, unless strict ACPI spec. compliance */
600 if (!acpi_strict) 604 if (!acpi_strict)
601 acpi_gbl_enable_interpreter_slack = TRUE; 605 acpi_gbl_enable_interpreter_slack = TRUE;
@@ -617,7 +621,7 @@ void __init acpi_early_init(void)
617 /* 621 /*
618 * Get a separate copy of the FADT for use by other drivers. 622 * Get a separate copy of the FADT for use by other drivers.
619 */ 623 */
620 status = acpi_get_table(ACPI_TABLE_FADT, 1, &buffer); 624 status = acpi_get_table(ACPI_TABLE_ID_FADT, 1, &buffer);
621 if (ACPI_FAILURE(status)) { 625 if (ACPI_FAILURE(status)) {
622 printk(KERN_ERR PREFIX "Unable to get the FADT\n"); 626 printk(KERN_ERR PREFIX "Unable to get the FADT\n");
623 goto error0; 627 goto error0;
@@ -743,8 +747,6 @@ static int __init acpi_init(void)
743 747
744 ACPI_FUNCTION_TRACE("acpi_init"); 748 ACPI_FUNCTION_TRACE("acpi_init");
745 749
746 printk(KERN_INFO PREFIX "Subsystem revision %08x\n", ACPI_CA_VERSION);
747
748 if (acpi_disabled) { 750 if (acpi_disabled) {
749 printk(KERN_INFO PREFIX "Interpreter disabled.\n"); 751 printk(KERN_INFO PREFIX "Interpreter disabled.\n");
750 return_VALUE(-ENODEV); 752 return_VALUE(-ENODEV);