[PATCH 28/30] leon, gptimer: offset intnum with subtimer index
Daniel Hellstrom
daniel at gaisler.com
Thu Apr 13 19:31:37 UTC 2017
From: Martin Aberg <maberg at gaisler.com>
If separate interrupts are not available, then do not add the timer hardware
index number when configuring interrupt affinity.
---
c/src/lib/libbsp/sparc/shared/timer/gptimer.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/c/src/lib/libbsp/sparc/shared/timer/gptimer.c b/c/src/lib/libbsp/sparc/shared/timer/gptimer.c
index d26d007..ebcb0b5 100644
--- a/c/src/lib/libbsp/sparc/shared/timer/gptimer.c
+++ b/c/src/lib/libbsp/sparc/shared/timer/gptimer.c
@@ -444,7 +444,13 @@ static void gptimer_tlib_irq_reg(struct tlib_dev *hand, tlib_isr_t func, void *d
#if RTEMS_SMP
if (flags & TLIB_FLAGS_BROADCAST) {
- drvmgr_interrupt_set_affinity(priv->dev, timer->tindex,
+ int tindex = 0;
+
+ if (priv->separate_interrupt) {
+ /* Offset interrupt number with HW subtimer index */
+ tindex = timer->tindex;
+ }
+ drvmgr_interrupt_set_affinity(priv->dev, tindex,
_SMP_Online_processors);
}
#endif
--
2.7.4
More information about the devel
mailing list