]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - drivers/media/platform/exynos-gsc/gsc-core.c
[media] exynos-gsc: Simplify system PM
[mirror_ubuntu-artful-kernel.git] / drivers / media / platform / exynos-gsc / gsc-core.c
index 3ac588f5c558ba1c50a9c3c595283e2ae6b6b8d5..5aeb8b44eacd0299f054098ff9f81fd58f82b51c 100644 (file)
@@ -1182,20 +1182,6 @@ static int gsc_runtime_suspend(struct device *dev)
 #ifdef CONFIG_PM_SLEEP
 static int gsc_resume(struct device *dev)
 {
-       struct gsc_dev *gsc = dev_get_drvdata(dev);
-       unsigned long flags;
-
-       pr_debug("gsc%d: state: 0x%lx", gsc->id, gsc->state);
-
-       /* Do not resume if the device was idle before system suspend */
-       spin_lock_irqsave(&gsc->slock, flags);
-       if (!test_and_clear_bit(ST_SUSPEND, &gsc->state) ||
-           !gsc_m2m_opened(gsc)) {
-               spin_unlock_irqrestore(&gsc->slock, flags);
-               return 0;
-       }
-       spin_unlock_irqrestore(&gsc->slock, flags);
-
        if (!pm_runtime_suspended(dev))
                return gsc_runtime_resume(dev);
 
@@ -1204,13 +1190,6 @@ static int gsc_resume(struct device *dev)
 
 static int gsc_suspend(struct device *dev)
 {
-       struct gsc_dev *gsc = dev_get_drvdata(dev);
-
-       pr_debug("gsc%d: state: 0x%lx", gsc->id, gsc->state);
-
-       if (test_and_set_bit(ST_SUSPEND, &gsc->state))
-               return 0;
-
        if (!pm_runtime_suspended(dev))
                return gsc_runtime_suspend(dev);