diff options
author | Daniel Hellstrom <daniel@gaisler.com> | 2014-05-19 22:52:18 +0200 |
---|---|---|
committer | Daniel Hellstrom <daniel@gaisler.com> | 2014-05-28 17:33:22 +0200 |
commit | 3a76d830983653224ceea9217bdb2b8db00ca67c (patch) | |
tree | 13ad3018143adcc9f80ab56ee53d8e4e145dfd1e /c | |
parent | bsps: Do not build tests that require a tick interrupt. (diff) | |
download | rtems-3a76d830983653224ceea9217bdb2b8db00ca67c.tar.bz2 |
LEON3: add support for IRQ16..31 for CPU!=0
Diffstat (limited to 'c')
-rw-r--r-- | c/src/lib/libbsp/sparc/leon3/include/leon.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/sparc/leon3/include/leon.h b/c/src/lib/libbsp/sparc/leon3/include/leon.h index 7e8188d463..57601459b0 100644 --- a/c/src/lib/libbsp/sparc/leon3/include/leon.h +++ b/c/src/lib/libbsp/sparc/leon3/include/leon.h @@ -132,11 +132,12 @@ extern int LEON3_IrqCtrl_EIrq; static __inline__ int bsp_irq_fixup(int irq) { - int eirq; + int eirq, cpu; if (LEON3_IrqCtrl_EIrq != 0 && irq == LEON3_IrqCtrl_EIrq) { /* Get interrupt number from IRQ controller */ - eirq = LEON3_IrqCtrl_Regs->intid[LEON3_Cpu_Index] & 0x1f; + cpu = _LEON3_Get_current_processor(); + eirq = LEON3_IrqCtrl_Regs->intid[cpu] & 0x1f; if (eirq & 0x10) irq = eirq; } |