diff options
author | Andy Green <andy@openmoko.com> | 2008-11-19 17:09:46 +0000 |
---|---|---|
committer | Andy Green <agreen@pads.home.warmcat.com> | 2008-11-19 17:09:46 +0000 |
commit | 2204d8b104b812411a39118ffb436dfbd479787a (patch) | |
tree | c44cf815b492a2b81717947a4836a264692bb440 /drivers/mfd/glamo/glamo-core.c | |
parent | d4f8c947ca4693e5a08c252bcd2f0bb6d1e99592 (diff) |
add-use-pcf50633-resume-callback-jbt6k74.patch
Adds the resume callback stuff to glamo, then changes
jbt6k74 to no longer use a sleeping workqueue, but to
make its resume actions dependent on pcf50633 and
glamo resume (for backlight and communication to LCM
respectively)
Signed-off-by: Andy Green <andy@openmoko.com>
Diffstat (limited to 'drivers/mfd/glamo/glamo-core.c')
-rw-r--r-- | drivers/mfd/glamo/glamo-core.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/mfd/glamo/glamo-core.c b/drivers/mfd/glamo/glamo-core.c index a6b977b41f6..445ff242d5b 100644 --- a/drivers/mfd/glamo/glamo-core.c +++ b/drivers/mfd/glamo/glamo-core.c @@ -1088,6 +1088,8 @@ static int __init glamo_probe(struct platform_device *pdev) goto out_free; } + init_resume_dependency_list(&glamo->resume_dependency); + /* register a number of sibling devices whoise IOMEM resources * are siblings of pdev's IOMEM resource */ #if 0 @@ -1226,6 +1228,18 @@ static int glamo_remove(struct platform_device *pdev) } #ifdef CONFIG_PM + +/* have to export this because struct glamo_core is opaque */ + +void glamo_register_resume_dependency(struct resume_dependency * + resume_dependency) +{ + register_resume_dependency(&glamo_handle->resume_dependency, + resume_dependency); +} +EXPORT_SYMBOL_GPL(glamo_register_resume_dependency); + + static int glamo_suspend(struct platform_device *pdev, pm_message_t state) { glamo_power(glamo_handle, GLAMO_POWER_SUSPEND); @@ -1235,6 +1249,8 @@ static int glamo_suspend(struct platform_device *pdev, pm_message_t state) static int glamo_resume(struct platform_device *pdev) { glamo_power(glamo_handle, GLAMO_POWER_ON); + callback_all_resume_dependencies(&glamo_handle->resume_dependency); + return 0; } #else |