summaryrefslogtreecommitdiffstats
path: root/bsps/shared/dev/btimer
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-04-19 06:17:52 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-04-20 09:49:37 +0200
commitd6fb37aa9fdb7ee5175a82875f6e16b9acd5f12a (patch)
tree5bc27bffb620de0f07147f90c1304e5c4e59c5a6 /bsps/shared/dev/btimer
parentbsps: Remove unused irq.h template file (diff)
downloadrtems-d6fb37aa9fdb7ee5175a82875f6e16b9acd5f12a.tar.bz2
bsps: Move shared btimer support to bsps
This patch is a part of the BSP source reorganization. Update #3285.
Diffstat (limited to 'bsps/shared/dev/btimer')
-rw-r--r--bsps/shared/dev/btimer/btimer-cpucounter.c35
-rw-r--r--bsps/shared/dev/btimer/btimer-stub.c30
2 files changed, 65 insertions, 0 deletions
diff --git a/bsps/shared/dev/btimer/btimer-cpucounter.c b/bsps/shared/dev/btimer/btimer-cpucounter.c
new file mode 100644
index 0000000000..ade1c02cd1
--- /dev/null
+++ b/bsps/shared/dev/btimer/btimer-cpucounter.c
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2017 embedded brains GmbH. All rights reserved.
+ *
+ * embedded brains GmbH
+ * Dornierstr. 4
+ * 82178 Puchheim
+ * Germany
+ * <rtems@embedded-brains.de>
+ *
+ * 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/btimer.h>
+#include <rtems/counter.h>
+
+static uint32_t benchmark_timer_base;
+
+void benchmark_timer_initialize(void)
+{
+ benchmark_timer_base = rtems_counter_read();
+}
+
+benchmark_timer_t benchmark_timer_read(void)
+{
+ return rtems_counter_difference(rtems_counter_read(), benchmark_timer_base);
+}
+
+void benchmark_timer_disable_subtracting_average_overhead(
+ bool find_average_overhead
+)
+{
+ (void) find_average_overhead;
+}
diff --git a/bsps/shared/dev/btimer/btimer-stub.c b/bsps/shared/dev/btimer/btimer-stub.c
new file mode 100644
index 0000000000..d1e3313115
--- /dev/null
+++ b/bsps/shared/dev/btimer/btimer-stub.c
@@ -0,0 +1,30 @@
+/*
+ * This file implements a stub benchmark timer that is sufficient to
+ * satisfy linking the RTEMS Benchmarks.
+ *
+ * COPYRIGHT (c) 1989-2001.
+ * On-Line Applications Research Corporation (OAR).
+ */
+
+#include <bsp.h>
+#include <rtems/btimer.h>
+
+bool benchmark_timer_find_average_overhead;
+
+void benchmark_timer_initialize(void)
+{
+}
+
+benchmark_timer_t benchmark_timer_read(void)
+{
+ if (benchmark_timer_find_average_overhead)
+ return 1;
+ return 0;
+}
+
+void benchmark_timer_disable_subtracting_average_overhead(
+ bool find_flag
+)
+{
+ benchmark_timer_find_average_overhead = find_flag;
+}