[PATCH 5/13] ACPI / PM: Introduce function for refcounting device power resources

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Rafael J. Wysocki
Date: Wednesday, November 24, 2010 - 4:06 pm

From: Rafael J. Wysocki <rjw@sisk.pl>

Introduce function acpi_power_on_resources() that reference counts
and possibly turns on ACPI power resources for a given device and
a given power state of it.

This function will be used for reference counting device power
resources during initialization.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
---
 drivers/acpi/internal.h |    1 +
 drivers/acpi/power.c    |    8 ++++++++
 2 files changed, 9 insertions(+)

Index: linux-2.6/drivers/acpi/power.c
===================================================================
--- linux-2.6.orig/drivers/acpi/power.c
+++ linux-2.6/drivers/acpi/power.c
@@ -485,6 +485,14 @@ int acpi_power_get_inferred_state(struct
 	return 0;
 }
 
+int acpi_power_on_resources(struct acpi_device *device, int state)
+{
+	if (!device || state < ACPI_STATE_D0 || state > ACPI_STATE_D3)
+		return -EINVAL;
+
+	return acpi_power_on_list(&device->power.states[state].resources);
+}
+
 int acpi_power_transition(struct acpi_device *device, int state)
 {
 	int result;
Index: linux-2.6/drivers/acpi/internal.h
===================================================================
--- linux-2.6.orig/drivers/acpi/internal.h
+++ linux-2.6/drivers/acpi/internal.h
@@ -42,6 +42,7 @@ int acpi_power_init(void);
 int acpi_device_sleep_wake(struct acpi_device *dev,
                            int enable, int sleep_state, int dev_state);
 int acpi_power_get_inferred_state(struct acpi_device *device, int *state);
+int acpi_power_on_resources(struct acpi_device *device, int state);
 int acpi_power_transition(struct acpi_device *device, int state);
 extern int acpi_power_nocheck;
 

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 0/13] ACPI / PM: Rework power resources management, Rafael J. Wysocki, (Wed Nov 24, 4:01 pm)
[PATCH 1/13] ACPI / PM: Check device state before refcount ..., Rafael J. Wysocki, (Wed Nov 24, 4:02 pm)
[PATCH 2/13] ACPI / PM: Do not refcount power resources th ..., Rafael J. Wysocki, (Wed Nov 24, 4:03 pm)
[PATCH 3/13] ACPI / PM: Prevent acpi_power_get_inferred_st ..., Rafael J. Wysocki, (Wed Nov 24, 4:05 pm)
[PATCH 4/13] ACPI / PM: Add functions for manipulating lis ..., Rafael J. Wysocki, (Wed Nov 24, 4:06 pm)
[PATCH 5/13] ACPI / PM: Introduce function for refcounting ..., Rafael J. Wysocki, (Wed Nov 24, 4:06 pm)
[PATCH 6/13] ACPI / PM: Introduce __acpi_bus_get_power(), Rafael J. Wysocki, (Wed Nov 24, 4:07 pm)
[PATCH 7/13] ACPI / PM: Add function for device power stat ..., Rafael J. Wysocki, (Wed Nov 24, 4:08 pm)
[PATCH 8/13] ACPI / PM: Add function for updating device p ..., Rafael J. Wysocki, (Wed Nov 24, 4:09 pm)
[PATCH 9/13] ACPI / PM: Register acpi_power_driver early, Rafael J. Wysocki, (Wed Nov 24, 4:10 pm)
[PATCH 10/13] ACPI / PM: Register power resource devices a ..., Rafael J. Wysocki, (Wed Nov 24, 4:10 pm)
[PATCH 11/13] ACPI / Fan: Rework the handling of power res ..., Rafael J. Wysocki, (Wed Nov 24, 4:11 pm)
[PATCH 12/13] ACPI / PM: Drop acpi_bus_get_power(), Rafael J. Wysocki, (Wed Nov 24, 4:12 pm)
[PATCH 13/13] ACPI / PM: Drop acpi_power_nocheck, Rafael J. Wysocki, (Wed Nov 24, 4:12 pm)
[PATCH] Platform / x86: Make fujitsu_laptop use acpi_bus_u ..., Rafael J. Wysocki, (Fri Nov 26, 2:55 pm)
Re: [PATCH 12/13] ACPI / PM: Drop acpi_bus_get_power(), Rafael J. Wysocki, (Wed Dec 1, 3:07 pm)