[PATCH] drm/exynos: modify condition in mixer and hdmi resume

Rahul Sharma rahul.sharma at samsung.com
Thu Feb 14 03:44:36 PST 2013


From: Prathyush K <prathyush.k at samsung.com>

If mixer is runtime suspended (by DPMS OFF), mixer_suspend
does not call mixer_poweroff and just returns. Similarily the
mixer_resume should not resume the mixer if mixer is
runtime_suspended. It should be done through DPMS ON.

The existing check is stopping the resume. This issue is fixed
by reversing the condiftion. It also holds good for hdmi driver.

Inline with http://lists.freedesktop.org/archives/dri-devel/2013-January/032920.html.

Signed-off-by: Prathyush K <prathyush.k at samsung.com>
Signed-off-by: Rahul Sharma <rahul.sharma at samsung.com>
---
It is based on exynos-drm-next-todo branch at
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git
 drivers/gpu/drm/exynos/exynos_hdmi.c  | 2 +-
 drivers/gpu/drm/exynos/exynos_mixer.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c
index 9e3c2ad..273a6ea 100644
--- a/drivers/gpu/drm/exynos/exynos_hdmi.c
+++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
@@ -2386,7 +2386,7 @@ static int hdmi_resume(struct device *dev)
 	enable_irq(hdata->external_irq);
 	enable_irq(hdata->internal_irq);
 
-	if (!pm_runtime_suspended(dev)) {
+	if (pm_runtime_suspended(dev)) {
 		DRM_DEBUG_KMS("%s : Already resumed\n", __func__);
 		return 0;
 	}
diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c
index 5139a43..6404f7e4 100644
--- a/drivers/gpu/drm/exynos/exynos_mixer.c
+++ b/drivers/gpu/drm/exynos/exynos_mixer.c
@@ -1265,7 +1265,7 @@ static int mixer_resume(struct device *dev)
 
 	DRM_DEBUG_KMS("[%d] %s\n", __LINE__, __func__);
 
-	if (!pm_runtime_suspended(dev)) {
+	if (pm_runtime_suspended(dev)) {
 		DRM_DEBUG_KMS("%s : Already resumed\n", __func__);
 		return 0;
 	}
-- 
1.8.0



More information about the dri-devel mailing list