#include <precomp.h>
#include <debug.h>
Go to the source code of this file.
|
static int | acpi_power_add (struct acpi_device *device) |
|
static int | acpi_power_remove (struct acpi_device *device, int type) |
|
static int | acpi_power_resume (struct acpi_device *device, int state) |
|
static int | acpi_power_get_context (ACPI_HANDLE handle, struct acpi_power_resource **resource) |
|
static int | acpi_power_get_state (ACPI_HANDLE handle, int *state) |
|
static int | acpi_power_get_list_state (struct acpi_handle_list *list, int *state) |
|
static int | acpi_power_on (ACPI_HANDLE handle, struct acpi_device *dev) |
|
static int | acpi_power_off_device (ACPI_HANDLE handle, struct acpi_device *dev) |
|
int | acpi_device_sleep_wake (struct acpi_device *dev, int enable, int sleep_state, int dev_state) |
|
int | acpi_enable_wakeup_device_power (struct acpi_device *dev, int sleep_state) |
|
int | acpi_disable_wakeup_device_power (struct acpi_device *dev) |
|
int | acpi_power_get_inferred_state (struct acpi_device *device) |
|
int | acpi_power_transition (struct acpi_device *device, int state) |
|
int | acpi_power_init (void) |
|
◆ _COMPONENT
◆ ACPI_POWER_RESOURCE_STATE_OFF
#define ACPI_POWER_RESOURCE_STATE_OFF 0x00 |
◆ ACPI_POWER_RESOURCE_STATE_ON
#define ACPI_POWER_RESOURCE_STATE_ON 0x01 |
◆ ACPI_POWER_RESOURCE_STATE_UNKNOWN
#define ACPI_POWER_RESOURCE_STATE_UNKNOWN 0xFF |
◆ NDEBUG
◆ acpi_device_sleep_wake()
acpi_device_sleep_wake - execute _DSW (Device Sleep Wake) or (deprecated in ACPI 3.0) _PSW (Power State Wake) @dev: Device to handle. @enable: 0 - disable, 1 - enable the wake capabilities of the device. @sleep_state: Target sleep state of the system. @dev_state: Target power state of the device.
Execute _DSW (Device Sleep Wake) or (deprecated in ACPI 3.0) _PSW (Power State Wake) for the device, if present. On failure reset the device's wakeup.flags.valid flag.
RETURN VALUE: 0 if either _DSW or _PSW has been successfully executed 0 if neither _DSW nor _PSW has been found -ENODEV if the execution of either _DSW or _PSW has failed
Definition at line 301 of file power.c.
320 in_arg[0].Integer.Value =
enable;
322 in_arg[1].Integer.Value = sleep_state;
324 in_arg[2].Integer.Value = dev_state;
329 DPRINT1(
"_DSW execution failed\n");
330 dev->wakeup.flags.valid = 0;
336 in_arg[0].Integer.Value =
enable;
339 DPRINT1(
"_PSW execution failed\n");
340 dev->wakeup.flags.valid = 0;
#define ACPI_TYPE_INTEGER
ACPI_STATUS AcpiEvaluateObject(ACPI_HANDLE Handle, ACPI_STRING Pathname, ACPI_OBJECT_LIST *ExternalParams, ACPI_BUFFER *ReturnBuffer)
Referenced by acpi_disable_wakeup_device_power(), and acpi_enable_wakeup_device_power().
◆ acpi_disable_wakeup_device_power()
Definition at line 398 of file power.c.
403 if (!
dev || !
dev->wakeup.flags.valid)
408 if (--
dev->wakeup.prepare_count > 0)
415 if (
dev->wakeup.prepare_count < 0)
416 dev->wakeup.prepare_count = 0;
423 for (
i = 0;
i <
dev->wakeup.resources.count;
i++) {
425 dev->wakeup.resources.handles[
i],
dev);
427 DPRINT(
"Transition power state\n");
428 dev->wakeup.flags.valid = 0;
int acpi_device_sleep_wake(struct acpi_device *dev, int enable, int sleep_state, int dev_state)
static int acpi_power_off_device(ACPI_HANDLE handle, struct acpi_device *dev)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
◆ acpi_enable_wakeup_device_power()
Definition at line 353 of file power.c.
358 if (!
dev || !
dev->wakeup.flags.valid)
363 if (
dev->wakeup.prepare_count++)
367 for (
i = 0;
i <
dev->wakeup.resources.count;
i++) {
370 DPRINT(
"Transition power state\n");
371 dev->wakeup.flags.valid = 0;
385 dev->wakeup.prepare_count = 0;
int acpi_device_sleep_wake(struct acpi_device *dev, int enable, int sleep_state, int dev_state)
static int acpi_power_on(ACPI_HANDLE handle, struct acpi_device *dev)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
◆ acpi_power_add()
Definition at line 543 of file power.c.
union acpi_object ACPI_OBJECT
#define acpi_device_bid(d)
#define INIT_LIST_HEAD(ptr)
#define ACPI_POWER_DEVICE_NAME
char acpi_device_class[20]
#define ACPI_POWER_RESOURCE_STATE_ON
char acpi_device_name[40]
#define ExAllocatePoolWithTag(hernya, size, tag)
struct acpi_object::@609 PowerResource
ACPI_STATUS AcpiEvaluateObject(ACPI_HANDLE Handle, ACPI_STRING Pathname, ACPI_OBJECT_LIST *ExternalParams, ACPI_BUFFER *ReturnBuffer)
#define ACPI_POWER_RESOURCE_STATE_OFF
char * strcpy(char *DstString, const char *SrcString)
static int acpi_power_get_state(ACPI_HANDLE handle, int *state)
#define ACPI_STATE_UNKNOWN
◆ acpi_power_get_context()
◆ acpi_power_get_inferred_state()
Definition at line 444 of file power.c.
#define ACPI_POWER_RESOURCE_STATE_ON
static int acpi_power_get_list_state(struct acpi_handle_list *list, int *state)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define ACPI_STATE_UNKNOWN
Referenced by acpi_bus_get_power().
◆ acpi_power_get_list_state()
Definition at line 150 of file power.c.
162 for (
i=0;
i<
list->count;
i++) {
#define ACPI_POWER_RESOURCE_STATE_ON
#define ACPI_DEBUG_PRINT(pl)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static int acpi_power_get_state(ACPI_HANDLE handle, int *state)
Referenced by acpi_power_get_inferred_state().
◆ acpi_power_get_state()
Definition at line 120 of file power.c.
125 unsigned long long sta = 0;
143 node_name, *
state?
"on":
"off"));
ACPI_STATUS acpi_evaluate_integer(ACPI_HANDLE handle, ACPI_STRING pathname, ACPI_OBJECT_LIST *arguments, unsigned long long *data)
#define ACPI_POWER_RESOURCE_STATE_ON
ACPI_STATUS AcpiGetName(ACPI_HANDLE Handle, UINT32 NameType, ACPI_BUFFER *Buffer)
#define ACPI_DEBUG_PRINT(pl)
#define ACPI_POWER_RESOURCE_STATE_OFF
Referenced by acpi_power_add(), acpi_power_get_list_state(), and acpi_power_resume().
◆ acpi_power_init()
Definition at line 660 of file power.c.
664 DPRINT(
"acpi_power_init\n");
#define INIT_LIST_HEAD(ptr)
static struct list_head acpi_power_resource_list
static struct acpi_driver acpi_power_driver
int acpi_bus_register_driver(struct acpi_driver *driver)
Referenced by acpi_init().
◆ acpi_power_off_device()
Definition at line 237 of file power.c.
254 if (
dev->handle ==
ref->device->handle) {
#define list_for_each_safe(pos, n, head)
static void list_del(struct list_head *entry)
#define ACPI_DEBUG_PRINT(pl)
#define container_of(ptr, type, member)
__WINE_SERVER_LIST_INLINE int list_empty(const struct list *list)
static unsigned __int64 next
ACPI_STATUS AcpiEvaluateObject(ACPI_HANDLE Handle, ACPI_STRING Pathname, ACPI_OBJECT_LIST *ExternalParams, ACPI_BUFFER *ReturnBuffer)
static int acpi_power_get_context(ACPI_HANDLE handle, struct acpi_power_resource **resource)
Referenced by acpi_disable_wakeup_device_power(), and acpi_power_transition().
◆ acpi_power_on()
Definition at line 186 of file power.c.
203 if (
dev->handle ==
ref->device->handle) {
#define list_for_each_safe(pos, n, head)
__WINE_SERVER_LIST_INLINE void list_add_tail(struct list *list, struct list *elem)
#define ACPI_DEBUG_PRINT(pl)
#define container_of(ptr, type, member)
#define ExAllocatePoolWithTag(hernya, size, tag)
static unsigned __int64 next
ACPI_STATUS AcpiEvaluateObject(ACPI_HANDLE Handle, ACPI_STRING Pathname, ACPI_OBJECT_LIST *ExternalParams, ACPI_BUFFER *ReturnBuffer)
static int acpi_power_get_context(ACPI_HANDLE handle, struct acpi_power_resource **resource)
Referenced by acpi_enable_wakeup_device_power(), acpi_power_resume(), and acpi_power_transition().
◆ acpi_power_remove()
Definition at line 607 of file power.c.
#define list_for_each_safe(pos, n, head)
static void list_del(struct list_head *entry)
#define container_of(ptr, type, member)
static unsigned __int64 next
#define acpi_driver_data(d)
◆ acpi_power_resume()
Definition at line 631 of file power.c.
static int acpi_power_on(ACPI_HANDLE handle, struct acpi_device *dev)
#define container_of(ptr, type, member)
__WINE_SERVER_LIST_INLINE int list_empty(const struct list *list)
#define ACPI_POWER_RESOURCE_STATE_OFF
static int acpi_power_get_state(ACPI_HANDLE handle, int *state)
#define acpi_driver_data(d)
◆ acpi_power_transition()
Definition at line 484 of file power.c.
499 cl = &
device->power.states[
device->power.state].resources;
static int acpi_power_on(ACPI_HANDLE handle, struct acpi_device *dev)
static int acpi_power_off_device(ACPI_HANDLE handle, struct acpi_device *dev)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
ACPI_HANDLE handles[ACPI_MAX_HANDLES]
#define ACPI_STATE_UNKNOWN
Referenced by acpi_bus_set_power().
◆ acpi_power_driver
Initial value:= {
{0,0},
0,
0,
}
static int acpi_power_resume(struct acpi_device *device, int state)
static int acpi_power_add(struct acpi_device *device)
static int acpi_power_remove(struct acpi_device *device, int type)
#define ACPI_POWER_DRIVER_NAME
Definition at line 61 of file power.c.
Referenced by acpi_power_init().
◆ acpi_power_nocheck
◆ acpi_power_resource_list