ACPI: fix S3 fan resume issue
http://bugzilla.kernel.org/show_bug.cgi?id=7570#c14 Signed-off-by: Konstantin Karasyov <konstantin.a.karasyov@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
255f0385c8
commit
7292576043
1 changed files with 7 additions and 6 deletions
|
@ -436,8 +436,6 @@ int acpi_power_transition(struct acpi_device *device, int state)
|
|||
cl = &device->power.states[device->power.state].resources;
|
||||
tl = &device->power.states[state].resources;
|
||||
|
||||
device->power.state = ACPI_STATE_UNKNOWN;
|
||||
|
||||
if (!cl->count && !tl->count) {
|
||||
result = -ENODEV;
|
||||
goto end;
|
||||
|
@ -468,12 +466,15 @@ int acpi_power_transition(struct acpi_device *device, int state)
|
|||
goto end;
|
||||
}
|
||||
|
||||
/* We shouldn't change the state till all above operations succeed */
|
||||
device->power.state = state;
|
||||
end:
|
||||
if (result)
|
||||
end:
|
||||
if (result) {
|
||||
device->power.state = ACPI_STATE_UNKNOWN;
|
||||
printk(KERN_WARNING PREFIX "Transitioning device [%s] to D%d\n",
|
||||
device->pnp.bus_id, state);
|
||||
} else {
|
||||
/* We shouldn't change the state till all above operations succeed */
|
||||
device->power.state = state;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue