powerpc/mpic: Fix mapping of "DCR" based MPIC variants
commit07610a8a67bc0893a1bcb9f98e9ef25e924d5e28
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Mon, 22 Jun 2009 16:47:59 +0000 (22 16:47 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 30 Jul 2009 21:40:19 +0000 (30 14:40 -0700)
treebf507c7718d1fb911fdd5827102145cf857950b3
parent9783772fe815ac811a3d73757a2f86ec9dceef00
powerpc/mpic: Fix mapping of "DCR" based MPIC variants

commit 5a2642f620eb6e40792822fa0eafe23046fbb55e upstream.

Commit 31207dab7d2e63795eb15823947bd2f7025b08e2
"Fix incorrect allocation of interrupt rev-map"
introduced a regression crashing on boot on machines using
a "DCR" based MPIC, such as the Cell blades.

The reason is that the irq host data structure is initialized
much later as a result of that patch, causing our calls to
mpic_map() do be done before we have a host setup.

Unfortunately, this breaks _mpic_map_dcr() which uses the
mpic->irqhost to get to the device node.

This fixes it by, instead, passing the device node explicitely
to mpic_map().

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Akira Tsukamoto <akirat@rd.scei.sony.co.jp>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/powerpc/sysdev/mpic.c