summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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
}