提交 d57d09a4 编写于 作者: R Rafael J. Wysocki 提交者: Len Brown

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: NRafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: NLen Brown <len.brown@intel.com>
上级 86e4e20e
...@@ -815,16 +815,22 @@ static void acpi_bus_set_run_wake_flags(struct acpi_device *device) ...@@ -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) ...@@ -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) ...@@ -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, ...@@ -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 { ...@@ -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 */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册