acpi_fan_suspend should probably set state to ACPI_D3, rather than ACPI_D0.
With this change the fan works after S3 suspend atleast on HP nw8000 laptop,
for which the suspended fan has been broken since sword-and-stone.
Signed-off-by: Tommi Kyntola <tommi.kyntola@ray.fi>
---
Why this was ACPI_D0 beats me, but it's been that way since
the _suspend/_resume functios got added in the commit
0feabb01d93e5801d1127416a66cfc3963280bca (2.6.18-rc1, I think).
The fan hasn't worked on my HP nw8000 laptop after an S3 suspend
ever, but fixing that to ACPI_D3 there finally makes it work as
expected.
If there was some hidden reason why that was set to ACPI_D0,
then perhaps a config option for some ICH4 or HP laptops
is called for.
Kynde
diff --git a/drivers/acpi/fan.c b/drivers/acpi/fan.c
index 045c894..7ae70b0 100644
--- a/drivers/acpi/fan.c
+++ b/drivers/acpi/fan.c
@@ -243,7 +243,7 @@ static int acpi_fan_suspend(struct acpi_device *device, int state)
if (!device)
return -EINVAL;
- acpi_bus_set_power(device->handle, ACPI_STATE_D0);
+ acpi_bus_set_power(device->handle, ACPI_STATE_D3);
return AE_OK;
}
-