summaryrefslogtreecommitdiff
path: root/drivers/staging/omapdrm/omap_drv.h
diff options
context:
space:
mode:
authorAndy Gross <andy.gross@ti.com>2012-12-19 20:53:37 (GMT)
committerRob Clark <robdclark@gmail.com>2013-02-16 22:38:04 (GMT)
commit4836d15789c85224662d3e037694d15ec9901631 (patch)
treee112870812cb4556086167d2f1e8ef90691348f4 /drivers/staging/omapdrm/omap_drv.h
parent3314fdf8b44bd4914050614fa2c56b7c587fabc2 (diff)
downloadlinux-fsl-qoriq-4836d15789c85224662d3e037694d15ec9901631.tar.xz
drm/omap: Add PM capabilities
Added power management capabilities into the omapdrm and DMM drivers. During suspend, we don't need to do anything to maintain the state of the LUT. We have all the necessary information to recreate the mappings of the GEM object list maintained by the omapdrm driver. On resume, the DMM resume handler will first reprogram the LUT to point to the dummy page. The subsequent resume handler in the omapdrm will call into the DMM and reprogram each of the buffer objects. This will ensure that all of the necessary objects will be pinned into the DMM properly. Order of suspend/resume handlers is done by device creation. We create the DMM device before the omapdrm, so the correct order is maintained. Signed-off-by: Andy Gross <andy.gross@ti.com> Signed-off-by: Rob Clark <rob@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/omapdrm/omap_drv.h')
-rw-r--r--drivers/staging/omapdrm/omap_drv.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/staging/omapdrm/omap_drv.h b/drivers/staging/omapdrm/omap_drv.h
index cd1f22b..f921027 100644
--- a/drivers/staging/omapdrm/omap_drv.h
+++ b/drivers/staging/omapdrm/omap_drv.h
@@ -135,6 +135,10 @@ void omap_gem_describe(struct drm_gem_object *obj, struct seq_file *m);
void omap_gem_describe_objects(struct list_head *list, struct seq_file *m);
#endif
+#ifdef CONFIG_PM
+int omap_gem_resume(struct device *dev);
+#endif
+
int omap_irq_enable_vblank(struct drm_device *dev, int crtc);
void omap_irq_disable_vblank(struct drm_device *dev, int crtc);
irqreturn_t omap_irq_handler(DRM_IRQ_ARGS);