diff options
author | Michael Ellerman <michael@ellerman.id.au> | 2007-05-08 02:58:36 (GMT) |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-05-08 03:43:48 (GMT) |
commit | a7de7c74227edda719b257eb15aecd73790ff894 (patch) | |
tree | c5168a047e3b55b220a869c678a9fefb76ffbdfc /arch/powerpc/sysdev/mpic.c | |
parent | 812fd1fd63caf2d72906603ebb9c6049a19ef4d2 (diff) | |
download | linux-fsl-qoriq-a7de7c74227edda719b257eb15aecd73790ff894.tar.xz |
[POWERPC] MPIC MSI allocator
To support MSI on MPIC we need a way to reserve and allocate hardware irq
numbers, this patch implements an allocator for that purpose.
New firmware platforms must define a "msi-available-ranges" property on their
MPIC node for MSI to work. For U3/U4 we do a best-guess setup.
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/sysdev/mpic.c')
-rw-r--r-- | arch/powerpc/sysdev/mpic.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c index 33ecf89..fc0428a 100644 --- a/arch/powerpc/sysdev/mpic.c +++ b/arch/powerpc/sysdev/mpic.c @@ -36,6 +36,8 @@ #include <asm/mpic.h> #include <asm/smp.h> +#include "mpic.h" + #ifdef DEBUG #define DBG(fmt...) printk(fmt) #else @@ -891,6 +893,8 @@ static int mpic_host_map(struct irq_host *h, unsigned int virq, if (hw >= mpic->irq_count) return -EINVAL; + mpic_msi_reserve_hwirq(mpic, hw); + /* Default chip */ chip = &mpic->hc_irq; |