diff options
-rw-r--r-- | drivers/video/omap2/dss/dss.c | 5 | ||||
-rw-r--r-- | drivers/video/omap2/dss/hdmi.c | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/drivers/video/omap2/dss/dss.c b/drivers/video/omap2/dss/dss.c index 0bcb94376c0..ac9f2a85a45 100644 --- a/drivers/video/omap2/dss/dss.c +++ b/drivers/video/omap2/dss/dss.c @@ -699,6 +699,11 @@ struct clk *dss_get_ick(void) return clk_get(&dss.pdev->dev, "ick"); } +int dss_runtime_pm_enabled(void) +{ + return pm_runtime_enabled(&dss.pdev->dev); +} + int dss_runtime_get(void) { int r; diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c index b9d86301bc7..40398f7ec2e 100644 --- a/drivers/video/omap2/dss/hdmi.c +++ b/drivers/video/omap2/dss/hdmi.c @@ -779,6 +779,9 @@ static int hdmi_runtime_resume(struct device *dev) clk_enable(hdmi.sys_clk); + if (!dss_runtime_pm_enabled()) + return -EBUSY; + r = dss_runtime_get(); if (r < 0) goto err_get_dss; |