summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/sparc/leon3/clock/ckinit.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c b/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
index 5d645dcd36..4ef29d33ef 100644
--- a/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
+++ b/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
@@ -155,6 +155,18 @@ static void bsp_clock_handler_install(rtems_isr *new)
}
}
+#define Clock_driver_support_set_interrupt_affinity(online_processors) \
+ do { \
+ uint32_t cpu_count = _SMP_Processor_count; \
+ uint32_t cpu_index; \
+ LEON_Enable_interrupt_broadcast(clkirq); \
+ for (cpu_index = 0; cpu_index < cpu_count; ++cpu_index) { \
+ if (_Processor_mask_Is_set(online_processors, cpu_index)) { \
+ BSP_Cpu_Unmask_interrupt(clkirq, cpu_index); \
+ } \
+ } \
+ } while (0)
+
static void leon3_clock_initialize(void)
{
volatile struct irqmp_timestamp_regs *irqmp_ts =