diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2008-05-07 17:40:52 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2008-05-07 17:40:52 +0000 |
commit | 0e58c4f598fc8782041bc01c2f58e02d5bf2e001 (patch) | |
tree | ebba2f03d64a0949912b18f77fdf9e79e7b5827b /c/src/lib/libbsp/sparc/leon3/clock/ckinit.c | |
parent | 2008-05-07 Joel Sherrill <joel.sherrill@OARcorp.com> (diff) | |
download | rtems-0e58c4f598fc8782041bc01c2f58e02d5bf2e001.tar.bz2 |
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.c | 15 |
1 files changed, 15 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 bde71411f6..977b9d887a 100644 --- a/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c +++ b/c/src/lib/libbsp/sparc/leon3/clock/ckinit.c @@ -94,4 +94,19 @@ 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) + (rtems_configuration_get_microseconds_per_tick() - clicks) * 1000; +} + +#define Clock_driver_nanoseconds_since_last_tick bsp_clock_nanoseconds_since_last_tick + #include "../../../shared/clockdrv_shell.c" |