From: Tony Lindgren Date: Thu, 20 May 2010 18:11:44 +0000 (-0700) Subject: Merge branch 'pm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux... X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=5a5f561e4060844a37d8fe81dce2352c406aac97;p=openwrt%2Fstaging%2Fblogic.git Merge branch 'pm-next' of git://git./linux/kernel/git/khilman/linux-omap-pm into omap-for-linus --- 5a5f561e4060844a37d8fe81dce2352c406aac97 diff --cc arch/arm/mach-omap2/pm34xx.c index 468e1e3321e0,1d7169855ac5..24c1966f935e --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c @@@ -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;