kernel_optimize_test/arch/arm
Kevin Hilman 58a5559e46 OMAP3: PM: ensure IO wakeups are properly disabled
Commit 5a5f561 (convert OMAP3 PRCM macros to the _SHIFT/_MASK suffixes)
mistakenly removed the check for PER when disabling the IO chain.

During idle, if the PER powerdomain transitions into a lower state
and CORE does not, the IO pad wakeups are not being disabled in
the idle path after they are enabled. This can happen with the
lower C-states when using CPUidle for example.

This patch ensures that the check for disabling IO wakeups also checks
for PER transitions, matching the check done to enable IO wakeups.

Found when debugging PM/CPUidle related problems reported by Ameya
Palande <ameya.palande@nokia.com>.  Problems were triggered
particularily on boards with UART2 consoles (n900, Overo) since UART2
is in the PER powerdomain.

Tested on l-o master (omap3_defonfig + CONFIG_CPU_IDLE=y) as well
as with current PM branch.  Boards tested: n900, Overo, omap3evm.

Cc: Paul Walmsley <paul@pwsan.com>
Cc: Ameya Palande <ameya.palande@nokia.com>
Tested-by: Jarkko Nikula <jhnikula@gmail.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
[tony@atomide.com: updated description to clarify the transistion]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2010-08-16 09:22:05 +03:00
..
boot Merge branches 'master' and 'devel' into for-linus 2010-08-10 23:17:52 +01:00
common Merge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into devel-stable 2010-08-06 18:10:25 +01:00
configs omap: Fix omap_4430sdp_defconfig for make oldconfig 2010-08-16 09:22:04 +03:00
include/asm archs: replace unifdef-y with header-y 2010-08-14 22:26:51 +02:00
kernel Mark arguments to certain syscalls as being const 2010-08-13 16:53:13 -07:00
lib
mach-aaec2000
mach-at91 ARM: 6323/1: cam60: don't use __init for cam60_spi_{flash_platform_data,partitions} 2010-08-10 22:46:56 +01:00
mach-bcmring
mach-clps711x ARM: 6283/1: Remove useless PCIO_BASE definitions 2010-08-05 10:35:49 +01:00
mach-cns3xxx
mach-davinci Merge branch 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci 2010-08-08 10:00:55 -07:00
mach-dove
mach-ebsa110
mach-ep93xx Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 2010-08-07 17:07:31 -07:00
mach-footbridge
mach-gemini
mach-h720x ARM: 6283/1: Remove useless PCIO_BASE definitions 2010-08-05 10:35:49 +01:00
mach-imx ARM: 6322/1: imx/pca100: Fix name of spi platform data 2010-08-10 22:11:43 +01:00
mach-integrator ARM: 6283/1: Remove useless PCIO_BASE definitions 2010-08-05 10:35:49 +01:00
mach-iop13xx
mach-iop32x
mach-iop33x
mach-ixp4xx Merge git://git.infradead.org/mtd-2.6 2010-08-15 17:32:47 -07:00
mach-ixp23xx ARM: 6283/1: Remove useless PCIO_BASE definitions 2010-08-05 10:35:49 +01:00
mach-ixp2000
mach-kirkwood Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 2010-08-07 17:07:31 -07:00
mach-ks8695
mach-lh7a40x
mach-loki
mach-lpc32xx
mach-mmp [ARM] mmp: move declarations into SoC specific header file from common.h 2010-08-05 14:34:46 +08:00
mach-msm Merge branch 'msm-core' of git://codeaurora.org/quic/kernel/dwalker/linux-msm 2010-08-12 10:07:32 -07:00
mach-mv78xx0
mach-mx3 Merge git://git.infradead.org/mtd-2.6 2010-08-15 17:32:47 -07:00
mach-mx5
mach-mx25
mach-mxc91231
mach-netx
mach-nomadik
mach-ns9xxx
mach-nuc93x
mach-omap1 Merge branch 'v2.6.35-omap-mailbox-for-next' of git://gitorious.org/~doyu/lk/mainline into omap-for-linus 2010-08-04 16:10:38 +03:00
mach-omap2 OMAP3: PM: ensure IO wakeups are properly disabled 2010-08-16 09:22:05 +03:00
mach-orion5x ARM: Fix gen_nand probe structures contents 2010-08-12 02:21:18 +01:00
mach-pnx4008
mach-pxa Merge branch 'devel-stable' into devel 2010-08-09 14:09:29 +01:00
mach-realview
mach-rpc
mach-s3c24a0/include/mach
mach-s3c64xx Merge branch 'for-linus/samsung-2635' of git://git.fluff.org/bjdooks/linux 2010-08-14 11:59:44 -07:00
mach-s3c2400
mach-s3c2410
mach-s3c2412
mach-s3c2416 s3c-fb: add device name initialization 2010-08-11 08:59:10 -07:00
mach-s3c2440 panic: keep blinking in spite of long spin timer mode 2010-08-11 08:59:22 -07:00
mach-s3c2443 s3c-fb: add device name initialization 2010-08-11 08:59:10 -07:00
mach-s5p6440 Merge branch 'next-samsung' into for-next 2010-08-06 21:49:18 +09:00
mach-s5p6442 Merge branch 'next-samsung' into for-next 2010-08-06 21:49:18 +09:00
mach-s5pc100 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-08-11 09:13:19 -07:00
mach-s5pv210 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-08-11 09:13:19 -07:00
mach-s5pv310 ARM: S5PV310: Add Samsung UNIVERSAL_C210 support 2010-08-06 21:15:52 +09:00
mach-sa1100 Merge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into devel-stable 2010-08-06 18:10:25 +01:00
mach-shark
mach-shmobile
mach-spear3xx
mach-spear6xx
mach-stmp37xx
mach-stmp378x
mach-tegra [ARM] tegra: harmony: Add harmony board file 2010-08-05 14:57:02 -07:00
mach-u300 ARM: 6297/1: move U300 timer to dynamic clock lookup 2010-08-10 22:10:56 +01:00
mach-ux500 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2010-08-09 21:00:07 -07:00
mach-versatile ARM: 6282/1: Remove useless definitions from versatile hardware.h 2010-08-05 10:35:49 +01:00
mach-vexpress
mach-w90x900 i2c/nuc900: add i2c driver support for nuc900 2010-08-11 00:34:38 +01:00
mm Merge branches 'master' and 'devel' into for-linus 2010-08-10 23:17:52 +01:00
nwfpe
oprofile
plat-iop
plat-mxc ARM: 6280/1: imx: Fix build failure when including <mach/gpio.h> without <linux/spinlock.h> 2010-08-10 22:10:50 +01:00
plat-nomadik Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2010-08-09 21:00:07 -07:00
plat-omap omap: Fix sev instruction usage for multi-omap 2010-08-16 09:22:04 +03:00
plat-orion Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 2010-08-07 17:07:31 -07:00
plat-pxa [ARM] pxa: move pmu device back into mach-pxa/ 2010-08-05 14:32:19 +08:00
plat-s3c24xx
plat-s5p ARM: S5P: Fix on missing S5P_DEV_FIMC in plat-s5p/Kconfig 2010-08-09 18:26:13 +09:00
plat-samsung Merge branch 'for-linus/samsung-2635' of git://git.fluff.org/bjdooks/linux 2010-08-14 11:59:44 -07:00
plat-spear Merge branch 'master' into for-next 2010-08-04 15:14:38 +02:00
plat-stmp3xxx
plat-versatile
tools
vfp
Kconfig Merge branches 'master' and 'devel' into for-linus 2010-08-10 23:17:52 +01:00
Kconfig-nommu
Kconfig.debug
Makefile Merge branches 'master' and 'devel' into for-linus 2010-08-10 23:17:52 +01:00