linux/arch/arm/common
Russell King 2bb3135166 ARM: GIC: fix GIC cpumask initialization
Punit Agrawal reports:
> I was trying to boot 3.8-rc5 on Realview EB 11MPCore using
> realview-smp_defconfig as a starting point but the kernel failed to
> progress past the log below (config attached).
>
> Pawel suggested I try reverting 384a290283 - "ARM: gic: use a private
> mapping for CPU target interfaces" that you've authored. With this
> commit reverted the kernel boots.
>
> I am not quite sure why the commit breaks 11MPCore but Pawel (cc'd)
> might be able to shed light on that.

Some early GIC implementations return zero for the first distributor
CPU routing register.  This means we can't rely on that telling us
which CPU interface we're connected to.  We know that these platforms
implement PPIs for IRQs 29-31 - but we shouldn't assume that these
will always be populated.

So, instead, scan for a non-zero CPU routing register in the first
32 IRQs and use that as our CPU mask.

Reported-by: Punit Agrawal <punit.agrawal@arm.com>
Reviewed-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2013-02-08 10:17:22 +00:00
..
Kconfig ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
Makefile ARM: remove ixp23xx and ixp2000 platforms 2012-04-06 08:26:18 -05:00
dmabounce.c ARM: dma-mapping: add support for dma_get_sgtable() 2012-07-30 12:25:47 +02:00
gic.c ARM: GIC: fix GIC cpumask initialization 2013-02-08 10:17:22 +00:00
icst.c Update broken web addresses in arch directory. 2010-10-18 11:03:21 +02:00
it8152.c ARM: pxa: armcore: fix PCI PIO warnings 2012-10-09 21:58:01 +02:00
locomo.c arm: Fold irq_set_chip/irq_set_handler 2011-03-29 14:47:58 +02:00
sa1111.c ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
scoop.c ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
sharpsl_param.c [ARM] 4733/1: export sharpsl_param 2008-10-03 10:18:35 +01:00
timer-sp.c ARM: 7586/1: sp804: set cpumask to cpu_possible_mask for clock event device 2012-11-28 09:46:57 +00:00
via82c505.c ARM: PCI: provide a default bus scan implementation 2012-05-13 17:12:17 +01:00
vic.c ARM: 7611/1: VIC: fix bug in VIC irqdomain code 2013-01-02 10:35:07 +00:00