Skip to content

Commit

Permalink
OMAPDSS: fix bogus WARN_ON in dss_runtime_put()
Browse files Browse the repository at this point in the history
pm_runtime_put_sync() in dss_runtime_put() returns -EBUSY when any child
of dss is still enabled. This happens, for example, when a display
output is enabled and one dumps the clocks via debugfs. This causes
dss_runtime_get & put to be called.

While I couldn't find anything about this in the documentation and it
wasn't immediately clear from runtime_pm code, it looks to me that
pm_runtime_put_sync() returns -EBUSY to inform that things went fine,
but the device could not be turned off as there are still child devices
that are enabled. This is not a problem.

This patch skips the WARN_ON if pm_runtime_put_sync() returns -EBUSY.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
  • Loading branch information
Tomi Valkeinen committed Jun 4, 2012
1 parent d1700f9 commit 5025ce0
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/video/omap2/dss/dss.c
Original file line number Diff line number Diff line change
Expand Up @@ -731,7 +731,7 @@ static void dss_runtime_put(void)
DSSDBG("dss_runtime_put\n");

r = pm_runtime_put_sync(&dss.pdev->dev);
WARN_ON(r < 0);
WARN_ON(r < 0 && r != -EBUSY);
}

/* DEBUGFS */
Expand Down

0 comments on commit 5025ce0

Please sign in to comment.