diff options
Diffstat (limited to 'drivers/gpu/drm/omapdrm/dss/dispc.c')
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/dispc.c | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/drivers/gpu/drm/omapdrm/dss/dispc.c b/drivers/gpu/drm/omapdrm/dss/dispc.c index 48593932bddf..599183879caf 100644 --- a/drivers/gpu/drm/omapdrm/dss/dispc.c +++ b/drivers/gpu/drm/omapdrm/dss/dispc.c @@ -653,8 +653,11 @@ int dispc_runtime_get(struct dispc_device *dispc)  	DSSDBG("dispc_runtime_get\n");  	r = pm_runtime_get_sync(&dispc->pdev->dev); -	WARN_ON(r < 0); -	return r < 0 ? r : 0; +	if (WARN_ON(r < 0)) { +		pm_runtime_put_noidle(&dispc->pdev->dev); +		return r; +	} +	return 0;  }  void dispc_runtime_put(struct dispc_device *dispc) | 
