Merge branch 'pm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux...
authorTony Lindgren <tony@atomide.com>
Thu, 20 May 2010 18:11:44 +0000 (11:11 -0700)
committerTony Lindgren <tony@atomide.com>
Thu, 20 May 2010 18:11:44 +0000 (11:11 -0700)
1  2 
arch/arm/mach-omap2/pm34xx.c

index 468e1e3321e0ffe687b9f7fee849f6fa750e0232,1d7169855ac599bc43a477299151ca0417e24a2b..24c1966f935e88c52a761f28e28a1f119a727e87
@@@ -371,12 -379,19 +379,19 @@@ void omap_sram_idle(void
        if (pwrdm_read_pwrst(neon_pwrdm) == PWRDM_POWER_ON)
                pwrdm_set_next_pwrst(neon_pwrdm, mpu_next_state);
  
-       /* PER */
+       /* Enable IO-PAD and IO-CHAIN wakeups */
        per_next_state = pwrdm_read_next_pwrst(per_pwrdm);
        core_next_state = pwrdm_read_next_pwrst(core_pwrdm);
+       if (per_next_state < PWRDM_POWER_ON ||
+                       core_next_state < PWRDM_POWER_ON) {
+               prm_set_mod_reg_bits(OMAP3430_EN_IO, WKUP_MOD, PM_WKEN);
+               omap3_enable_io_chain();
+       }
+       /* PER */
        if (per_next_state < PWRDM_POWER_ON) {
                omap_uart_prepare_idle(2);
 -              omap2_gpio_prepare_for_retention();
 +              omap2_gpio_prepare_for_idle(per_next_state);
                if (per_next_state == PWRDM_POWER_OFF) {
                        if (core_next_state == PWRDM_POWER_ON) {
                                per_next_state = PWRDM_POWER_RET;