summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-05-07 17:40:52 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-05-07 17:40:52 +0000
commit0e58c4f598fc8782041bc01c2f58e02d5bf2e001 (patch)
treeebba2f03d64a0949912b18f77fdf9e79e7b5827b /c/src/lib/libbsp/sparc
parent2008-05-07 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-0e58c4f598fc8782041bc01c2f58e02d5bf2e001.tar.bz2
2008-05-07 Joel Sherrill <joel.sherrill@OARcorp.com>
* clock/ckinit.c: Add nanoseconds clock tick granularity support.
Diffstat (limited to 'c/src/lib/libbsp/sparc')
-rw-r--r--c/src/lib/libbsp/sparc/erc32/ChangeLog4
-rw-r--r--c/src/lib/libbsp/sparc/erc32/clock/ckinit.c5
-rw-r--r--c/src/lib/libbsp/sparc/leon2/ChangeLog4
-rw-r--r--c/src/lib/libbsp/sparc/leon2/clock/ckinit.c15
-rw-r--r--c/src/lib/libbsp/sparc/leon3/ChangeLog4
-rw-r--r--c/src/lib/libbsp/sparc/leon3/clock/ckinit.c15
6 files changed, 44 insertions, 3 deletions
diff --git a/c/src/lib/libbsp/sparc/erc32/ChangeLog b/c/src/lib/libbsp/sparc/erc32/ChangeLog
index ea7ac85577..2e1721a631 100644
--- a/c/src/lib/libbsp/sparc/erc32/ChangeLog
+++ b/c/src/lib/libbsp/sparc/erc32/ChangeLog
@@ -1,3 +1,7 @@
+2008-05-07 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * clock/ckinit.c: Add nanoseconds clock tick granularity support.
+
2008-04-23 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.am: Remove all references to console_reserve_resources and
diff --git a/c/src/lib/libbsp/sparc/erc32/clock/ckinit.c b/c/src/lib/libbsp/sparc/erc32/clock/ckinit.c
index b97a834627..7163ac3363 100644
--- a/c/src/lib/libbsp/sparc/erc32/clock/ckinit.c
+++ b/c/src/lib/libbsp/sparc/erc32/clock/ckinit.c
@@ -7,7 +7,7 @@
* The tick frequency is directly programmed to the configured number of
* microseconds per tick.
*
- * COPYRIGHT (c) 1989-2006.
+ * COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -52,7 +52,8 @@ uint32_t bsp_clock_nanoseconds_since_last_tick(void)
clicks = ERC32_MEC.Real_Time_Clock_Counter;
- return (uint32_t) (rtems_configuration_get_microseconds_per_tick() - clicks) * 1000;
+ return (uint32_t)
+ (rtems_configuration_get_microseconds_per_tick() - clicks) * 1000;
}
#define Clock_driver_nanoseconds_since_last_tick \
diff --git a/c/src/lib/libbsp/sparc/leon2/ChangeLog b/c/src/lib/libbsp/sparc/leon2/ChangeLog
index e6b6cc7132..5568e908be 100644
--- a/c/src/lib/libbsp/sparc/leon2/ChangeLog
+++ b/c/src/lib/libbsp/sparc/leon2/ChangeLog
@@ -1,3 +1,7 @@
+2008-05-07 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * clock/ckinit.c: Add nanoseconds clock tick granularity support.
+
2008-04-23 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.am: Remove all references to console_reserve_resources and
diff --git a/c/src/lib/libbsp/sparc/leon2/clock/ckinit.c b/c/src/lib/libbsp/sparc/leon2/clock/ckinit.c
index 5d128ebb3b..9f7cdcb31f 100644
--- a/c/src/lib/libbsp/sparc/leon2/clock/ckinit.c
+++ b/c/src/lib/libbsp/sparc/leon2/clock/ckinit.c
@@ -6,7 +6,7 @@
* The tick frequency is directly programmed to the configured number of
* microseconds per tick.
*
- * COPYRIGHT (c) 1989-2006.
+ * COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* Modified for LEON BSP
@@ -59,4 +59,17 @@ extern int CLOCK_SPEED;
LEON_REG.Timer_Control_1 = 0; \
} while (0)
+uint32_t bsp_clock_nanoseconds_since_last_tick(void)
+{
+ uint32_t clicks;
+
+ clicks = LEON_REG.Timer_Counter_1;
+
+ /* 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"
diff --git a/c/src/lib/libbsp/sparc/leon3/ChangeLog b/c/src/lib/libbsp/sparc/leon3/ChangeLog
index bc67f53389..3828dc21ab 100644
--- a/c/src/lib/libbsp/sparc/leon3/ChangeLog
+++ b/c/src/lib/libbsp/sparc/leon3/ChangeLog
@@ -1,3 +1,7 @@
+2008-05-07 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * clock/ckinit.c: Add nanoseconds clock tick granularity support.
+
2008-04-23 Joel Sherrill <joel.sherrill@OARcorp.com>
* ChangeLog, Makefile.am: Remove all references to
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"