diff options
Diffstat (limited to 'c')
-rw-r--r-- | c/src/lib/libbsp/arm/tms570/Makefile.am | 2 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/tms570/misc/cpucounterread.c | 62 |
2 files changed, 1 insertions, 63 deletions
diff --git a/c/src/lib/libbsp/arm/tms570/Makefile.am b/c/src/lib/libbsp/arm/tms570/Makefile.am index ee775c2a26..44e89faaf0 100644 --- a/c/src/lib/libbsp/arm/tms570/Makefile.am +++ b/c/src/lib/libbsp/arm/tms570/Makefile.am @@ -78,7 +78,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/tms570/start/pinmux.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/btimer/btimer-cpucounter.c # Misc -librtemsbsp_a_SOURCES += misc/cpucounterread.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/tms570/cpucounter/cpucounterread.c # Watchdog diff --git a/c/src/lib/libbsp/arm/tms570/misc/cpucounterread.c b/c/src/lib/libbsp/arm/tms570/misc/cpucounterread.c deleted file mode 100644 index c5e62d382d..0000000000 --- a/c/src/lib/libbsp/arm/tms570/misc/cpucounterread.c +++ /dev/null @@ -1,62 +0,0 @@ -/** - * @file - * - * @ingroup tms570_clocks - * - * @brief Cortex-R performace counters - * - * The counters setup functions are these which has been suggested - * on StackOverflow - * - * Code is probably for use on Cortex-A without modifications as well. - * - * http://stackoverflow.com/questions/3247373/how-to-measure-program-execution-time-in-arm-cortex-a8-processor - */ - -/* - * Copyright (c) 2014 Pavel Pisa <pisa@cmp.felk.cvut.cz> - * - * Czech Technical University in Prague - * Zikova 1903/4 - * 166 36 Praha 6 - * Czech Republic - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include <rtems/counter.h> -#include <rtems/sysinit.h> - -#include <libcpu/arm-cp15.h> - -#include <bsp.h> - -static void tms570_cpu_counter_initialize(void) -{ - uint32_t cycle_counter; - uint32_t pmcr; - - cycle_counter = ARM_CP15_PMCLRSET_CYCLE_COUNTER; - arm_cp15_set_performance_monitors_interrupt_enable_clear(cycle_counter); - arm_cp15_set_performance_monitors_count_enable_set(cycle_counter); - - pmcr = arm_cp15_get_performance_monitors_control(); - pmcr &= ~ARM_CP15_PMCR_D; - pmcr |= ARM_CP15_PMCR_E; - arm_cp15_set_performance_monitors_control(pmcr); - - rtems_counter_initialize_converter(2 * BSP_PLL_OUT_CLOCK); -} - -CPU_Counter_ticks _CPU_Counter_read(void) -{ - return arm_cp15_get_performance_monitors_cycle_count(); -} - -RTEMS_SYSINIT_ITEM( - tms570_cpu_counter_initialize, - RTEMS_SYSINIT_BSP_START, - RTEMS_SYSINIT_ORDER_FIRST -); |