PM / Domains: Split device PM domain data into base and need_restore
authorRafael J. Wysocki <rjw@sisk.pl>
Mon, 26 Sep 2011 18:22:02 +0000 (20:22 +0200)
committerRafael J. Wysocki <rjw@sisk.pl>
Mon, 26 Sep 2011 18:22:02 +0000 (20:22 +0200)
commitcd0ea672f58d5cfdea271c45cec0c897f2b792aa
tree96596cf00fd4fd84b1eb76626f7cc2e1e05e6a18
parent0d41da2e31e81f5c8aaabe17f769de4304b2d4c8
PM / Domains: Split device PM domain data into base and need_restore

The struct pm_domain_data data type is defined in such a way that
adding new fields specific to the generic PM domains code will
require include/linux/pm.h to be modified.  As a result, data types
used only by the generic PM domains code will be defined in two
headers, although they all should be defined in pm_domain.h and
pm.h will need to include more headers, which won't be very nice.

For this reason change the definition of struct pm_subsys_data
so that its domain_data member is a pointer, which will allow
struct pm_domain_data to be subclassed by various PM domains
implementations.  Remove the need_restore member from
struct pm_domain_data and make the generic PM domains code
subclass it by adding the need_restore member to the new data type.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
drivers/base/power/domain.c
include/linux/pm.h
include/linux/pm_domain.h