ACPI: Drop device flag wake_capable
The wake_capable ACPI device flag is not necessary, because it is only used in scan.c for recording the information that _PRW is present for the given device. That information is only used by acpi_add_single_object() to decide whether or not to call acpi_bus_get_wakeup_device_flags(), so the flag may be dropped if the _PRW check is moved to acpi_bus_get_wakeup_device_flags(). Moreover, acpi_bus_get_wakeup_device_flags() always returns 0, so it really should be void. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
86e4e20e8a
commit
d57d09a480
2 changed files with 10 additions and 19 deletions
|
@ -815,16 +815,22 @@ static void acpi_bus_set_run_wake_flags(struct acpi_device *device)
|
||||||
!!(event_status & ACPI_EVENT_FLAG_HANDLE);
|
!!(event_status & ACPI_EVENT_FLAG_HANDLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int acpi_bus_get_wakeup_device_flags(struct acpi_device *device)
|
static void acpi_bus_get_wakeup_device_flags(struct acpi_device *device)
|
||||||
{
|
{
|
||||||
|
acpi_handle temp;
|
||||||
acpi_status status = 0;
|
acpi_status status = 0;
|
||||||
int psw_error;
|
int psw_error;
|
||||||
|
|
||||||
|
/* Presence of _PRW indicates wake capable */
|
||||||
|
status = acpi_get_handle(device->handle, "_PRW", &temp);
|
||||||
|
if (ACPI_FAILURE(status))
|
||||||
|
return;
|
||||||
|
|
||||||
status = acpi_bus_extract_wakeup_device_power_package(device->handle,
|
status = acpi_bus_extract_wakeup_device_power_package(device->handle,
|
||||||
&device->wakeup);
|
&device->wakeup);
|
||||||
if (ACPI_FAILURE(status)) {
|
if (ACPI_FAILURE(status)) {
|
||||||
ACPI_EXCEPTION((AE_INFO, status, "Extracting _PRW package"));
|
ACPI_EXCEPTION((AE_INFO, status, "Extracting _PRW package"));
|
||||||
goto end;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
device->wakeup.flags.valid = 1;
|
device->wakeup.flags.valid = 1;
|
||||||
|
@ -840,11 +846,6 @@ static int acpi_bus_get_wakeup_device_flags(struct acpi_device *device)
|
||||||
if (psw_error)
|
if (psw_error)
|
||||||
ACPI_DEBUG_PRINT((ACPI_DB_INFO,
|
ACPI_DEBUG_PRINT((ACPI_DB_INFO,
|
||||||
"error in _DSW or _PSW evaluation\n"));
|
"error in _DSW or _PSW evaluation\n"));
|
||||||
|
|
||||||
end:
|
|
||||||
if (ACPI_FAILURE(status))
|
|
||||||
device->flags.wake_capable = 0;
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void acpi_bus_add_power_resource(acpi_handle handle);
|
static void acpi_bus_add_power_resource(acpi_handle handle);
|
||||||
|
@ -950,11 +951,6 @@ static int acpi_bus_get_flags(struct acpi_device *device)
|
||||||
if (ACPI_SUCCESS(status))
|
if (ACPI_SUCCESS(status))
|
||||||
device->flags.power_manageable = 1;
|
device->flags.power_manageable = 1;
|
||||||
|
|
||||||
/* Presence of _PRW indicates wake capable */
|
|
||||||
status = acpi_get_handle(device->handle, "_PRW", &temp);
|
|
||||||
if (ACPI_SUCCESS(status))
|
|
||||||
device->flags.wake_capable = 1;
|
|
||||||
|
|
||||||
/* TBD: Performance management */
|
/* TBD: Performance management */
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1281,11 +1277,7 @@ static int acpi_add_single_object(struct acpi_device **child,
|
||||||
* Wakeup device management
|
* Wakeup device management
|
||||||
*-----------------------
|
*-----------------------
|
||||||
*/
|
*/
|
||||||
if (device->flags.wake_capable) {
|
acpi_bus_get_wakeup_device_flags(device);
|
||||||
result = acpi_bus_get_wakeup_device_flags(device);
|
|
||||||
if (result)
|
|
||||||
goto end;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Performance Management
|
* Performance Management
|
||||||
|
|
|
@ -148,8 +148,7 @@ struct acpi_device_flags {
|
||||||
u32 suprise_removal_ok:1;
|
u32 suprise_removal_ok:1;
|
||||||
u32 power_manageable:1;
|
u32 power_manageable:1;
|
||||||
u32 performance_manageable:1;
|
u32 performance_manageable:1;
|
||||||
u32 wake_capable:1; /* Wakeup(_PRW) supported? */
|
u32 reserved:24;
|
||||||
u32 reserved:23;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* File System */
|
/* File System */
|
||||||
|
|
Loading…
Add table
Reference in a new issue