]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/mach-omap2/pm34xx.c
ARM: OMAP: SmartReflex driver integration
[linux-2.6-omap-h63xx.git] / arch / arm / mach-omap2 / pm34xx.c
index 40a58288b06033e7073b7cb05972dc6f3556e307..c7493f5828e311751eb4d0afc1554823b08dec97 100644 (file)
@@ -36,6 +36,7 @@
 
 #include "prm.h"
 #include "pm.h"
+#include "smartreflex.h"
 
 struct power_state {
        struct powerdomain *pwrdm;
@@ -259,6 +260,10 @@ static int omap3_pm_suspend(void)
        struct power_state *pwrst;
        int state, ret = 0;
 
+       /* XXX Disable smartreflex before entering suspend */
+       disable_smartreflex(SR1);
+       disable_smartreflex(SR2);
+
        /* Read current next_pwrsts */
        list_for_each_entry(pwrst, &pwrst_list, node)
                pwrst->saved_state = pwrdm_read_next_pwrst(pwrst->pwrdm);
@@ -290,6 +295,10 @@ restore:
                printk(KERN_INFO "Successfully put all powerdomains "
                       "to target state\n");
 
+       /* XXX Enable smartreflex after suspend */
+       enable_smartreflex(SR1);
+       enable_smartreflex(SR2);
+
        return ret;
 }