aboutsummaryrefslogtreecommitdiff
path: root/src/util/time.h
diff options
context:
space:
mode:
authorChristian Cunningham <cc@localhost>2021-12-27 22:20:20 -0800
committerChristian Cunningham <cc@localhost>2021-12-27 22:20:20 -0800
commit602739b35d874de509fbe4bb0b5b9b0b754237d9 (patch)
tree62306c6e27915b42f22ab9dfb51217638e566a67 /src/util/time.h
parent4ed33f1bd200666d485fb85a6a6dccec4855926e (diff)
Inlined functions
Diffstat (limited to 'src/util/time.h')
-rw-r--r--src/util/time.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/util/time.h b/src/util/time.h
index aa74896..13875e2 100644
--- a/src/util/time.h
+++ b/src/util/time.h
@@ -3,12 +3,23 @@
void routing_core0cntv_to_core0irq(void);
unsigned long read_core0timer_pending(void);
-void enable_cntv(void);
-void disable_cntv(void);
unsigned long long read_cntvct(void);
unsigned long long read_cntvoff(void);
unsigned long read_cntv_tval(void);
void write_cntv_tval(unsigned long val);
unsigned long read_cntfrq(void);
+static inline void enablecntv(void) {
+ unsigned long cntv_ctl;
+ cntv_ctl = 1;
+ asm volatile ("mcr p15, 0, %0, c14, c3, 1" :: "r"(cntv_ctl) ); // write CNTV_CTL
+}
+
+static inline void disablecntv(void)
+{
+ unsigned long cntv_ctl;
+ cntv_ctl = 0;
+ asm volatile ("mcr p15, 0, %0, c14, c3, 1" :: "r"(cntv_ctl) ); // write CNTV_CTL
+}
+
#endif