linux/arch/arm
Marc Zyngier abdd7b91da ARM: 7176/1: cpu_pm: register GIC PM notifier only once
When multiple GICs exist on a platform (RealView PB1176/11MP),
we must make sure the PM notifier block is only registered
once, otherwise we end up corrupting the PM notifier list.

The fix is to only register the notifier when initializing
the first GIC, as the power management functions seem
to iterate over all the registered GICs.

Tested on PB11MP and PB1176.

Reported-by: Will Deacon <will.deacon@arm.com>
Tested-by: Will Deacon <will.deacon@arm.com>
Cc: Colin Cross <ccross@android.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2011-11-26 21:58:54 +00:00
..
boot Merge branch 'fixes' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-11-20 14:34:58 -08:00
common ARM: 7176/1: cpu_pm: register GIC PM notifier only once 2011-11-26 21:58:54 +00:00
configs ARM: EXYNOS: Add ARCH_EXYNOS and reorganize arch/arm/mach-exynos 2011-11-06 13:54:56 +09:00
include/asm Merge branch 'for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into fixes 2011-11-22 20:44:19 +00:00
kernel ARM: 7174/1: Fix build error in kprobes test code on Thumb2 kernels 2011-11-26 21:58:53 +00:00
lib ARM: 7171/1: unwind: add unwind directives to bitops assembly macros 2011-11-26 21:58:53 +00:00
mach-at91 ARM: at91: Fix USBA gadget registration 2011-11-09 23:02:12 +08:00
mach-bcmring ARM: 7154/1: mach-bcmring: fix build error in dma.c 2011-11-09 21:53:35 +00:00
mach-clps711x Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-cns3xxx Merge branch 'depends/rmk/memory_h' into next/cleanup2 2011-11-01 13:47:27 +01:00
mach-davinci Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux 2011-11-07 10:13:52 -08:00
mach-dove Merge branch 'depends/rmk/memory_h' into next/cleanup2 2011-11-01 13:47:27 +01:00
mach-ebsa110 Merge branch 'dt/gic' into highbank/soc 2011-10-31 14:11:34 +01:00
mach-ep93xx Merge git://git.infradead.org/mtd-2.6 2011-11-07 09:11:16 -08:00
mach-exynos Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux 2011-11-07 10:13:52 -08:00
mach-footbridge Merge branch 'depends/rmk/memory_h' into next/cleanup2 2011-11-01 13:47:27 +01:00
mach-gemini Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
mach-h720x Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-highbank ARM: highbank: add suspend support 2011-10-31 14:14:05 +01:00
mach-imx arm/imx: fix imx6q mmc error when mounting rootfs 2011-11-11 16:53:35 +01:00
mach-integrator Merge branch 'depends/rmk/memory_h' into next/cleanup2 2011-11-01 13:47:27 +01:00
mach-iop13xx arm: Add export.h to ARM specific files as required. 2011-10-31 19:30:50 -04:00
mach-iop32x Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-iop33x Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-ixp4xx Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
mach-ixp23xx Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-ixp2000 arm: Add export.h to ARM specific files as required. 2011-10-31 19:30:50 -04:00
mach-kirkwood Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux 2011-11-07 10:13:52 -08:00
mach-ks8695 Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
mach-l7200/include/mach
mach-lpc32xx Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
mach-mmp Merge git://git.infradead.org/mtd-2.6 2011-11-07 09:11:16 -08:00
mach-msm Merge branch 'msm-fix' of git://codeaurora.org/quic/kernel/davidb/linux-msm into fixes 2011-11-09 17:02:13 -08:00
mach-mv78xx0 Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
mach-mx5 Merge branch 'imx-fixes-for-arnd' of git://git.pengutronix.de/git/imx/linux-2.6 into fixes 2011-11-11 08:53:46 -08:00
mach-mxs arm/mxs: fix mmc device adding for mach-mx28evk 2011-11-08 21:57:59 +08:00
mach-netx arm: Add export.h to ARM specific files as required. 2011-10-31 19:30:50 -04:00
mach-nomadik Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
mach-omap1 Merge branch 'fixes-modulesplit' into fixes 2011-11-07 12:27:23 -08:00
mach-omap2 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap 2011-11-07 16:14:26 -08:00
mach-orion5x Merge git://git.infradead.org/mtd-2.6 2011-11-07 09:11:16 -08:00
mach-picoxcell ARM: picoxcell: add extra temp register to addruart 2011-11-09 09:51:42 +00:00
mach-pnx4008 Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
mach-prima2 Merge branch 'next/pm' of git://git.linaro.org/people/arnd/arm-soc 2011-11-01 20:22:01 -07:00
mach-pxa Merge git://git.infradead.org/mtd-2.6 2011-11-07 09:11:16 -08:00
mach-realview Merge branch 'next/cross-platform' of git://git.linaro.org/people/arnd/arm-soc 2011-11-01 20:34:22 -07:00
mach-rpc Merge branch 'dt/gic' into highbank/soc 2011-10-31 14:11:34 +01:00
mach-s3c64xx Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
mach-s3c2410 Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
mach-s3c2412 Merge branch 'next/cleanup3' of git://git.linaro.org/people/arnd/arm-soc 2011-11-05 18:18:05 -07:00
mach-s3c2416 Merge branch 'next/devel2' of git://git.linaro.org/people/arnd/arm-soc 2011-11-05 18:21:21 -07:00
mach-s3c2440 Merge branch 'next/cleanup3' of git://git.linaro.org/people/arnd/arm-soc 2011-11-05 18:18:05 -07:00
mach-s3c2443 Merge branch 'next/devel2' of git://git.linaro.org/people/arnd/arm-soc 2011-11-05 18:21:21 -07:00
mach-s5p64x0 Merge branch 'next/cleanup3' of git://git.linaro.org/people/arnd/arm-soc 2011-11-05 18:18:05 -07:00
mach-s5pc100 Merge branch 'next/cleanup3' of git://git.linaro.org/people/arnd/arm-soc 2011-11-05 18:18:05 -07:00
mach-s5pv210 Merge branch 'next/cleanup3' of git://git.linaro.org/people/arnd/arm-soc 2011-11-05 18:18:05 -07:00
mach-sa1100 arm: fix implicit use of page.h in several arch/arm files 2011-10-31 19:30:46 -04:00
mach-shark Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-shmobile Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm 2011-11-20 14:33:02 -08:00
mach-spear3xx Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-spear6xx Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-tcc8k Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mach-tegra arm/tegra: enable headphone detection gpio on seaboard 2011-11-09 11:31:16 -08:00
mach-u300 Merge branch 'for-next' of git://git.infradead.org/users/sameo/mfd-2.6 2011-11-03 09:40:51 -07:00
mach-ux500 Merge branch 'for-next' of git://git.infradead.org/users/sameo/mfd-2.6 2011-11-03 09:40:51 -07:00
mach-versatile Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
mach-vexpress Merge branch 'next/cross-platform' of git://git.linaro.org/people/arnd/arm-soc 2011-11-01 20:34:22 -07:00
mach-vt8500 Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
mach-w90x900 ARM: 7158/1: add new MFP implement for NUC900 2011-11-12 11:33:08 +00:00
mach-zynq Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-28 12:02:27 -07:00
mm ARM: 7172/1: dma: Drop GFP_COMP for DMA memory allocations 2011-11-26 21:58:53 +00:00
nwfpe
oprofile
plat-iop arm: Add export.h to ARM specific files as required. 2011-10-31 19:30:50 -04:00
plat-mxc Merge branch 'imx-fixes-for-arnd' of git://git.pengutronix.de/git/imx/linux-2.6 into fixes 2011-11-11 08:53:46 -08:00
plat-nomadik Merge branch 'next/timer' of git://git.linaro.org/people/arnd/arm-soc 2011-11-01 20:18:05 -07:00
plat-omap Merge branch 'fixes-modulesplit' into fixes 2011-11-07 12:27:23 -08:00
plat-orion
plat-pxa Merge git://git.infradead.org/mtd-2.6 2011-11-07 09:11:16 -08:00
plat-s3c24xx Merge branch 'next/devel2' of git://git.linaro.org/people/arnd/arm-soc 2011-11-05 18:21:21 -07:00
plat-s5p ARM: EXYNOS: Add ARCH_EXYNOS and reorganize arch/arm/mach-exynos 2011-11-06 13:54:56 +09:00
plat-samsung arm: Add export.h to recently added files for EXPORT_SYMBOL 2011-11-07 10:28:58 -08:00
plat-spear Merge branch 'depends/rmk/memory_h' into next/fixes 2011-11-01 00:25:01 +01:00
plat-tcc ARM: plat-tcc: remove mach/memory.h 2011-10-13 12:49:42 -04:00
plat-versatile ARM: versatile: convert logical CPU numbers to physical numbers 2011-10-17 10:01:11 +01:00
tools ARM: Add a few machine types to mach-types 2011-10-17 13:28:46 +01:00
vfp arm: remove several unnecessary module.h include instances 2011-10-31 19:30:48 -04:00
Kconfig ARM: 7162/1: errata: tidy up Kconfig options for PL310 errata workarounds 2011-11-21 13:12:18 +00:00
Kconfig-nommu
Kconfig.debug Merge branch 'next/soc' of git://git.linaro.org/people/arnd/arm-soc 2011-11-01 21:08:03 -07:00
Makefile ARM: EXYNOS: Add ARCH_EXYNOS and reorganize arch/arm/mach-exynos 2011-11-06 13:54:56 +09:00