]> git.baikalelectronics.ru Git - kernel.git/commit
PM / Domains: Allow device callbacks to be added at any time
authorRafael J. Wysocki <rjw@sisk.pl>
Thu, 5 Jul 2012 20:12:54 +0000 (22:12 +0200)
committerRafael J. Wysocki <rjw@sisk.pl>
Thu, 5 Jul 2012 20:12:54 +0000 (22:12 +0200)
commit04d9d21fc92f52c82973e9e00c9be285ccb4adf3
tree194272c262ceb826a617446729853ac387228e9f
parentd5f3fc0e71c88397de255765a8fa0bcf8364cad4
PM / Domains: Allow device callbacks to be added at any time

Make it possible to modify device callbacks used by the generic PM
domains core code at any time, not only after the device has been
added to a domain.  This will allow device drivers to provide their
own device PM domain callbacks even if they are registered before
adding the devices to PM domains.

For this purpose, use the observation that the struct
generic_pm_domain_data object containing the relevant callback
pointers may be allocated by pm_genpd_add_callbacks() and the
callbacks may be set before __pm_genpd_add_device() is run for
the given device.  This object will then be used by
__pm_genpd_add_device(), but it has to be protected from
premature removal by reference counting.

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