summaryrefslogtreecommitdiff
path: root/include/arch/infineon-tc1796-mock/driver/counter.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/arch/infineon-tc1796-mock/driver/counter.h')
-rw-r--r--include/arch/infineon-tc1796-mock/driver/counter.h41
1 files changed, 0 insertions, 41 deletions
diff --git a/include/arch/infineon-tc1796-mock/driver/counter.h b/include/arch/infineon-tc1796-mock/driver/counter.h
deleted file mode 100644
index 38d039e..0000000
--- a/include/arch/infineon-tc1796-mock/driver/counter.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright 2022 Daniel Friesel
- *
- * SPDX-License-Identifier: BSD-2-Clause
- */
-#ifndef COUNTER_H
-#define COUNTER_H
-
-#define STM_TIM0 (*(volatile unsigned int*)0xf0000210)
-#define STM_CAP (*(volatile unsigned int*)0xf000022c)
-
-typedef unsigned int counter_value_t;
-typedef unsigned int counter_overflow_t;
-
-class Counter {
- private:
- Counter(const Counter &copy);
- unsigned long long startvalue, stopvalue;
-
- public:
- counter_value_t value;
- counter_overflow_t overflow;
-
- Counter() : overflow(0) {}
-
- inline void start() {
- startvalue = STM_TIM0;
- startvalue += (unsigned long long)STM_CAP << 32;
- }
-
- inline void stop() {
- stopvalue = STM_TIM0;
- stopvalue += (unsigned long long)STM_CAP << 32;
- value = (stopvalue - startvalue) & 0xffffffff;
- overflow = (unsigned long long)(stopvalue - startvalue) >> 32;
- }
-};
-
-extern Counter counter;
-
-#endif