ACPI / PM: Provide device PM functions operating on struct acpi_device
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 2 Nov 2012 00:40:45 +0000 (01:40 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 14 Nov 2012 23:15:18 +0000 (00:15 +0100)
commit078eb12648c2f8bba48921f60ec2cec3e1bbc051
tree18a669b4363a520e89213f9ae4d326611cab5cca
parentdee8370cc87e505ef39567f0974e73d59e75d76b
ACPI / PM: Provide device PM functions operating on struct acpi_device

If the caller of acpi_bus_set_power() already has a pointer to the
struct acpi_device object corresponding to the device in question, it
doesn't make sense for it to go through acpi_bus_get_device(), which
may be costly, because it involves acquiring the global ACPI
namespace mutex.

For this reason, export the function operating on struct acpi_device
objects used internally by acpi_bus_set_power(), so that it may be
called instead of acpi_bus_set_power() in the above case, and change
its name to acpi_device_set_power().

Additionally, introduce two inline wrappers for checking ACPI PM
capabilities of devices represented by struct acpi_device objects.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/bus.c
include/acpi/acpi_bus.h