linux/arch/arm
Jon Hunter 4c2880b31c irqchip/gic: Ensure gic_cpu_if_up/down() programs correct GIC instance
Commit 3228950621 ("irqchip: gic: Preserve gic V2 bypass bits in cpu
ctrl register") added a new function, gic_cpu_if_up(), to program the
GIC CPU_CTRL register. This function assumes that there is only one GIC
instance present and hence always uses the chip data for the primary GIC
controller. Although it is not common for there to be a secondary, some
devices do support a secondary. Therefore, fix this by passing
gic_cpu_if_up() a pointer to the appropriate chip data structure.

Similarly, the function gic_cpu_if_down() only assumes that there is a
single GIC instance present. Update this function so that an instance
number is passed for the appropriate GIC and return an error code on
failure. The vexpress TC2 (which has a single GIC) is currently the only
user of this function and so update it accordingly. Note that because the
TC2 only has a single GIC, the call to gic_cpu_if_down() should always
be successful.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: <linux-arm-kernel@lists.infradead.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Nicolas Pitre <nicolas.pitre@linaro.org>
Cc: Jason Cooper <jason@lakedaemon.net>
Link: http://lkml.kernel.org/r/1438332252-25248-2-git-send-email-jonathanh@nvidia.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2015-08-04 14:14:06 +02:00
..
boot dts: imx7: fix sd card gpio polarity specified in device tree 2015-07-24 10:18:36 +02:00
common TTY/Serial driver patches for 4.2-rc1 2015-06-26 15:53:22 -07:00
configs Allwinner late changes for 4.2 2015-07-09 15:08:44 -07:00
crypto
firmware
include Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm 2015-07-18 11:03:48 -07:00
kernel ARM: 8402/1: perf: Don't use of_node after putting it 2015-07-17 15:08:38 +01:00
kvm Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm 2015-06-26 12:20:00 -07:00
lib ARM: avoid unwanted GCC memset()/memcpy() optimisations for IO variants 2015-07-03 20:46:15 +01:00
mach-alpine
mach-asm9260
mach-at91 genalloc: rename dev_get_gen_pool() to gen_pool_get() 2015-06-30 19:45:01 -07:00
mach-axxia
mach-bcm ARM: BCM: Do not select CONFIG_MTD_NAND_BRCMNAND 2015-07-01 13:04:13 -07:00
mach-berlin ARM: SoC: driver updates for v4.2 2015-06-26 11:54:29 -07:00
mach-clps711x
mach-cns3xxx
mach-davinci ARM: SoC cleanups for v4.2 2015-06-26 11:08:27 -07:00
mach-digicolor
mach-dove ARM: dove: fix legacy dove IRQ numbers 2015-06-24 11:05:57 +02:00
mach-ebsa110
mach-efm32
mach-ep93xx ARM: ep93xx: simone: support for SPI-based MMC/SD cards 2015-06-11 14:21:29 -07:00
mach-exynos The changes to the common clock framework for 4.2 are dominated by new 2015-07-01 19:22:00 -07:00
mach-footbridge
mach-gemini ARM: gemini: Fix race in installing GPIO chained IRQ handler 2015-06-18 14:03:08 +02:00
mach-highbank
mach-hisi arm/mach-hisi: remove legacy __CPUINIT section that crept in 2015-06-16 14:12:21 -04:00
mach-imx ARM: imx6: gpc: always enable PU domain if CONFIG_PM is not set 2015-07-08 22:52:08 +08:00
mach-integrator ARM: 8365/1: introduce sp804_timer_disable and remove arm_timer.h inclusion 2015-06-02 09:58:18 +01:00
mach-iop13xx
mach-iop32x
mach-iop33x
mach-ixp4xx
mach-keystone Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm 2015-06-26 12:20:00 -07:00
mach-ks8695
mach-lpc18xx
mach-lpc32xx Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-07-01 15:19:35 -07:00
mach-mediatek
mach-meson
mach-mmp
mach-moxart
mach-mv78xx0
mach-mvebu ARM: SoC: late fixes and dependencies 2015-07-02 14:40:49 -07:00
mach-mxs
mach-netx
mach-nomadik
mach-nspire ARM: 8366/1: move Dual-Timer SP804 driver to drivers/clocksource 2015-06-02 09:58:18 +01:00
mach-omap1 ARM: SoC: platform support for v4.2 2015-06-26 11:34:35 -07:00
mach-omap2 ARM: OMAP2+: Add HAVE_ARM_SCU for AM43XX 2015-07-15 03:03:01 -07:00
mach-orion5x
mach-picoxcell
mach-prima2 move CSR rtc iobrg read/write API to be regmap 2015-07-08 14:20:12 -07:00
mach-pxa ARM: pxa: fix dm9000 platform data regression 2015-07-16 22:43:59 +02:00
mach-qcom
mach-realview ARM: 8366/1: move Dual-Timer SP804 driver to drivers/clocksource 2015-06-02 09:58:18 +01:00
mach-rockchip Remove __cpuinit macros and users. 2015-07-02 09:54:14 -07:00
mach-rpc
mach-s3c24xx
mach-s3c64xx
mach-s5pv210
mach-sa1100 Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm 2015-06-26 12:20:00 -07:00
mach-shmobile irqchip/gic: Remove redundant gic_set_irqchip_flags 2015-07-27 08:09:38 +02:00
mach-socfpga genalloc: rename dev_get_gen_pool() to gen_pool_get() 2015-06-30 19:45:01 -07:00
mach-spear Update Viresh Kumar's email address 2015-07-17 16:39:53 -07:00
mach-sti
mach-stm32
mach-sunxi Allwinner late changes for 4.2 2015-07-09 15:08:44 -07:00
mach-tegra ARM: SoC: platform support for v4.2 2015-06-26 11:34:35 -07:00
mach-u300
mach-uniphier
mach-ux500 irqchip/gic: Remove redundant gic_set_irqchip_flags 2015-07-27 08:09:38 +02:00
mach-versatile ARM: 8366/1: move Dual-Timer SP804 driver to drivers/clocksource 2015-06-02 09:58:18 +01:00
mach-vexpress irqchip/gic: Ensure gic_cpu_if_up/down() programs correct GIC instance 2015-08-04 14:14:06 +02:00
mach-vt8500
mach-w90x900
mach-zx
mach-zynq irqchip/gic: Remove redundant gic_set_irqchip_flags 2015-07-27 08:09:38 +02:00
mm ARM: invalidate L1 before enabling coherency 2015-07-17 15:08:40 +01:00
net ARM: net: fix vlan access instructions in ARM JIT. 2015-07-21 22:19:55 -07:00
nwfpe
oprofile
plat-iop
plat-omap
plat-orion
plat-pxa
plat-samsung ARM: SAMSUNG: Constify platform_device_id 2015-06-06 02:18:02 +09:00
plat-versatile
probes
tools
vdso Merge branches 'fixes' and 'ioremap' into for-linus 2015-07-07 12:35:33 +01:00
vfp
xen xen: Include xen/page.h rather than asm/xen/page.h 2015-06-17 16:14:18 +01:00
Kconfig Merge branches 'fixes' and 'ioremap' into for-linus 2015-07-07 12:35:33 +01:00
Kconfig-nommu
Kconfig.debug Merge branches 'fixes' and 'ioremap' into for-linus 2015-07-07 12:35:33 +01:00
Makefile Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm 2015-06-26 12:20:00 -07:00