summaryrefslogtreecommitdiffstats
path: root/c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2009-07-12 13:59:09 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2009-07-12 13:59:09 +0000
commit627e793016fcab0959a90e524b08253cd8ca5ffd (patch)
tree5a4951aeaf4e4d0c0e8efe55cdda5db79e1588f6 /c
parentHousekeeping. (diff)
downloadrtems-627e793016fcab0959a90e524b08253cd8ca5ffd.tar.bz2
2009-07-12 Xi Yang <hiyangxi@gmail.com>
* configure.ac, clock/clockdrv.c, startup/bspreset.c: Adjust clock initialization for clock tick so rtmonuse test now runs on Skyeye. Joel added configure magic and place holder in bspreset.c for Skyeye hardware reset device support.
Diffstat (limited to 'c')
-rw-r--r--c/src/lib/libbsp/arm/edb7312/ChangeLog7
-rw-r--r--c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c20
-rw-r--r--c/src/lib/libbsp/arm/edb7312/configure.ac7
-rw-r--r--c/src/lib/libbsp/arm/edb7312/startup/bspreset.c8
4 files changed, 34 insertions, 8 deletions
diff --git a/c/src/lib/libbsp/arm/edb7312/ChangeLog b/c/src/lib/libbsp/arm/edb7312/ChangeLog
index be2cb19b98..55ac314e85 100644
--- a/c/src/lib/libbsp/arm/edb7312/ChangeLog
+++ b/c/src/lib/libbsp/arm/edb7312/ChangeLog
@@ -1,3 +1,10 @@
+2009-07-12 Xi Yang <hiyangxi@gmail.com>
+
+ * configure.ac, clock/clockdrv.c, startup/bspreset.c: Adjust clock
+ initialization for clock tick so rtmonuse test now runs on Skyeye.
+ Joel added configure magic and place holder in bspreset.c for Skyeye
+ hardware reset device support.
+
2009-04-28 Chris Johns <chrisj@rtems.org>
* start/start.S: Update for boot_card command line change.
diff --git a/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c b/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c
index 88b53661cd..903aca9403 100644
--- a/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c
+++ b/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c
@@ -44,12 +44,20 @@ rtems_irq_connect_data clock_isr_data = {BSP_TC1OI,
/*
* Set up the clock hardware
-*/
-#define Clock_driver_support_initialize_hardware() \
- do { \
- *EP7312_SYSCON1 |= EP7312_SYSCON1_TC1_PRESCALE; \
- *EP7312_TC1D =(rtems_configuration_get_microseconds_per_tick() * 2000)/1000000; \
- *EP7312_TC1EOI = 0xFFFFFFFF; \
+ */
+#if ON_SKYEYE
+ #define TCD_VALUE \
+ (rtems_configuration_get_microseconds_per_tick() * 2000)/10000
+#else
+ #define TCD_VALUE \
+ (rtems_configuration_get_microseconds_per_tick() * 2000)/1000000
+#endif
+
+#define Clock_driver_support_initialize_hardware() \
+ do { \
+ *EP7312_SYSCON1 |= EP7312_SYSCON1_TC1_PRESCALE; \
+ *EP7312_TC1D = TCD_VALUE; \
+ *EP7312_TC1EOI = 0xFFFFFFFF; \
} while (0)
#define Clock_driver_support_shutdown_hardware() \
diff --git a/c/src/lib/libbsp/arm/edb7312/configure.ac b/c/src/lib/libbsp/arm/edb7312/configure.ac
index 39569f8a71..1e522fb8e7 100644
--- a/c/src/lib/libbsp/arm/edb7312/configure.ac
+++ b/c/src/lib/libbsp/arm/edb7312/configure.ac
@@ -18,6 +18,13 @@ RTEMS_PROG_CCAS
RTEMS_CHECK_NETWORKING
AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes")
+RTEMS_BSPOPTS_SET([ON_SKYEYE],[*],[])
+RTEMS_BSPOPTS_HELP([ON_SKYEYE],
+[If defined, enable options which optimize executingon the Skyeye
+ simulator. Speed up the clock ticks while the idle task is running so
+ time spent in the idle task is minimized. This significantly reduces
+ the wall time required to execute the RTEMS test suites.])
+
RTEMS_BSPOPTS_SET([BSP_PRESS_KEY_FOR_RESET],[*],[1])
RTEMS_BSPOPTS_HELP([BSP_PRESS_KEY_FOR_RESET],
[If defined, print a message and wait until pressed before resetting
diff --git a/c/src/lib/libbsp/arm/edb7312/startup/bspreset.c b/c/src/lib/libbsp/arm/edb7312/startup/bspreset.c
index 5c7f23e880..f18037e2b6 100644
--- a/c/src/lib/libbsp/arm/edb7312/startup/bspreset.c
+++ b/c/src/lib/libbsp/arm/edb7312/startup/bspreset.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002 by Jay Monkman <jtm@smoothsmoothie.com>
+ * Copyright (c) 2002 by Jay Monkman <jtm@smoothsmoothie.com>
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
@@ -12,5 +12,9 @@
void bsp_reset(void)
{
- asm volatile ("b _start");
+ #if ON_SKYEYE
+ /* TBD use Skyeye reset device */
+ #else
+ asm volatile ("b _start");
+ #endif
}