diff options
author | Patrick Mochel <mochel@linux.intel.com> | 2006-05-19 16:54:40 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2006-06-30 02:32:21 -0400 |
commit | 415985728895ba3127116bc4f999caf94420ed85 (patch) | |
tree | 888b4709a2301efac74f53ec4e7ebd7fccee3134 | |
parent | 8348e1b19a06b1932f65e84e1d59be29e1626c2b (diff) |
ACPI: power: add struct acpi_device to struct acpi_power_resource
- Use it instead of acpi_bus_get_device() where we can..
Signed-off-by: Patrick Mochel <mochel@linux.intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r-- | drivers/acpi/power.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/acpi/power.c b/drivers/acpi/power.c index 224f729f700e..2b61719d680b 100644 --- a/drivers/acpi/power.c +++ b/drivers/acpi/power.c @@ -71,6 +71,7 @@ static struct acpi_driver acpi_power_driver = { struct acpi_power_resource { acpi_handle handle; + struct acpi_device * device; acpi_bus_id name; u32 system_level; u32 order; @@ -203,10 +204,8 @@ static int acpi_power_on(acpi_handle handle) return -ENOEXEC; /* Update the power resource's _device_ power state */ - result = acpi_bus_get_device(resource->handle, &device); - if (result) - return result; - device->power.state = ACPI_STATE_D0; + device = resource->device; + resource->device->power.state = ACPI_STATE_D0; ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Resource [%s] turned on\n", resource->name)); @@ -253,9 +252,7 @@ static int acpi_power_off_device(acpi_handle handle) return -ENOEXEC; /* Update the power resource's _device_ power state */ - result = acpi_bus_get_device(resource->handle, &device); - if (result) - return result; + device = resource->device; device->power.state = ACPI_STATE_D3; ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Resource [%s] turned off\n", @@ -545,6 +542,7 @@ static int acpi_power_add(struct acpi_device *device) memset(resource, 0, sizeof(struct acpi_power_resource)); resource->handle = device->handle; + resource->device = device; strcpy(resource->name, device->pnp.bus_id); strcpy(acpi_device_name(device), ACPI_POWER_DEVICE_NAME); strcpy(acpi_device_class(device), ACPI_POWER_CLASS); |