diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-02-18 08:36:16 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-03-04 13:36:10 +0100 |
commit | 90d8567d34a6d80da04b1cb37b667a3173f584c4 (patch) | |
tree | 221e66b9da1dd9dd79d01e507f0026bfb477b810 /c/src/lib/libbsp/powerpc/qoriq/clock/clock-config.c | |
parent | score: Add _SMP_Before_multitasking_action() (diff) | |
download | rtems-90d8567d34a6d80da04b1cb37b667a3173f584c4.tar.bz2 |
score: Distribute clock tick to all online CPUs
Update #2554.
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libbsp/powerpc/qoriq/clock/clock-config.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/powerpc/qoriq/clock/clock-config.c b/c/src/lib/libbsp/powerpc/qoriq/clock/clock-config.c index 8da927f1f3..17d4bde3cb 100644 --- a/c/src/lib/libbsp/powerpc/qoriq/clock/clock-config.c +++ b/c/src/lib/libbsp/powerpc/qoriq/clock/clock-config.c @@ -7,7 +7,7 @@ */ /* - * Copyright (c) 2011-2015 embedded brains GmbH. All rights reserved. + * Copyright (c) 2011, 2016 embedded brains GmbH. All rights reserved. * * embedded brains GmbH * Dornierstr. 4 @@ -55,6 +55,7 @@ static void qoriq_clock_handler_install(rtems_isr_entry *old_isr) *old_isr = NULL; +#if defined(RTEMS_MULTIPROCESSING) && !defined(RTEMS_SMP) sc = qoriq_pic_set_affinity( CLOCK_INTERRUPT, ppc_processor_id() @@ -62,6 +63,7 @@ static void qoriq_clock_handler_install(rtems_isr_entry *old_isr) if (sc != RTEMS_SUCCESSFUL) { rtems_fatal_error_occurred(0xdeadbeef); } +#endif sc = qoriq_pic_set_priority( CLOCK_INTERRUPT, @@ -126,8 +128,13 @@ static void qoriq_clock_cleanup(void) #define Clock_driver_support_initialize_hardware() \ qoriq_clock_initialize() + #define Clock_driver_support_install_isr(clock_isr, old_isr) \ qoriq_clock_handler_install(&old_isr) + +#define Clock_driver_support_set_interrupt_affinity(online_processors) \ + qoriq_pic_set_affinities(CLOCK_INTERRUPT, online_processors[0]) + #define Clock_driver_support_shutdown_hardware() \ qoriq_clock_cleanup() |