summaryrefslogtreecommitdiff
path: root/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-05-07 17:39:10 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-05-07 17:39:10 +0000
commitef83c4c70f508621c22106bed90d98b27d4853b5 (patch)
tree495b600b26f4bbccfb03737a4262cbe585283324 /c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
parentf58d7d8ac581438336de82dcb195e8c6da1528ef (diff)
2008-05-07 Joel Sherrill <joel.sherrill@OARcorp.com>
* clock/ckinit.c: Add nanoseconds clock tick granularity support.
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/sparc/leon3/clock/ckinit.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c b/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
index d9f2acb6fe..cb18d0d076 100644
--- a/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
+++ b/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c
@@ -82,4 +82,18 @@ static int clkirq;
LEON3_Timer_Regs->timer[LEON3_CLOCK_INDEX].conf = 0; \
} while (0)
+uint32_t bsp_clock_nanoseconds_since_last_tick(void)
+{
+ uint32_t clicks;
+ if ( !LEON3_Timer_Regs )
+ return 0;
+
+ clicks = LEON3_Timer_Regs->timer[0].value;
+
+ /* Down counter */
+ return (uint32_t) (BSP_Configuration.microseconds_per_tick - clicks) * 1000;
+}
+
+#define Clock_driver_nanoseconds_since_last_tick bsp_clock_nanoseconds_since_last_tick
+
#include "../../../shared/clockdrv_shell.c"