summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2001-01-03 16:44:17 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2001-01-03 16:44:17 +0000
commite182c62027a01ebc8ce00699fddb559f9e7c05d3 (patch)
tree2b96b17d47968e4c5341d30bbd0b6daafacc51e4 /c/src/lib/libbsp
parent2001-01-03 Joel Sherrill <joel@OARcorp.com> (diff)
downloadrtems-e182c62027a01ebc8ce00699fddb559f9e7c05d3.tar.bz2
2001-01-03 Joel Sherrill <joel@OARcorp.com>
* clockdrv_shell.c: Added fast idle mode which is enabled by defining CLOCK_DRIVER_USE_FAST_IDLE. * console-polled.c: Added console_initialize_hardware() hook.
Diffstat (limited to 'c/src/lib/libbsp')
-rw-r--r--c/src/lib/libbsp/shared/ChangeLog6
-rw-r--r--c/src/lib/libbsp/shared/clockdrv_shell.c15
-rw-r--r--c/src/lib/libbsp/shared/console-polled.c8
3 files changed, 28 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/shared/ChangeLog b/c/src/lib/libbsp/shared/ChangeLog
index f2a7aa25f8..25dc15ac5f 100644
--- a/c/src/lib/libbsp/shared/ChangeLog
+++ b/c/src/lib/libbsp/shared/ChangeLog
@@ -1,3 +1,9 @@
+2001-01-03 Joel Sherrill <joel@OARcorp.com>
+
+ * clockdrv_shell.c: Added fast idle mode which is enabled by defining
+ CLOCK_DRIVER_USE_FAST_IDLE.
+ * console-polled.c: Added console_initialize_hardware() hook.
+
2000-12-01 Joel Sherrill <joel@OARcorp.com>
* console-polled.c: Remove warnings.
diff --git a/c/src/lib/libbsp/shared/clockdrv_shell.c b/c/src/lib/libbsp/shared/clockdrv_shell.c
index b9dc1ce3e4..af1de48987 100644
--- a/c/src/lib/libbsp/shared/clockdrv_shell.c
+++ b/c/src/lib/libbsp/shared/clockdrv_shell.c
@@ -51,8 +51,20 @@ rtems_isr Clock_isr(
rtems_vector_number vector
)
{
+#ifdef CLOCK_DRIVER_USE_FAST_IDLE
+ do {
+ Clock_driver_ticks += 1;
+ rtems_clock_tick();
+ } while ( _Thread_Executing == _Thread_Idle &&
+ _Thread_Heir == _Thread_Executing)
+
+ Clock_driver_support_at_tick();
+ return;
+#else
/*
* Do the hardware specific per-tick action.
+ *
+ * The counter/timer may or may not be set to automatically reload.
*/
Clock_driver_support_at_tick();
@@ -64,7 +76,6 @@ rtems_isr Clock_isr(
Clock_driver_ticks += 1;
/*
- * Real Time Clock counter/timer is set to automatically reload.
*/
#ifndef CLOCK_DRIVER_ISRS_ARE_ONE_MILLISECOND
@@ -72,6 +83,8 @@ rtems_isr Clock_isr(
#else
#error "Clock driver shell: Does not currently support counting mseconds."
#endif
+
+#endif
}
/*
diff --git a/c/src/lib/libbsp/shared/console-polled.c b/c/src/lib/libbsp/shared/console-polled.c
index 165989a779..122f14c975 100644
--- a/c/src/lib/libbsp/shared/console-polled.c
+++ b/c/src/lib/libbsp/shared/console-polled.c
@@ -29,6 +29,8 @@ int console_inbyte_nonblocking(
int port
);
+void console_initialize_hardware(void);
+
/*
* Console Termios Support Entry Points
*
@@ -66,6 +68,12 @@ rtems_device_driver console_initialize(
rtems_termios_initialize();
/*
+ * Make sure the hardware is initialized.
+ */
+
+ console_initialize_hardware();
+
+ /*
* Register Device Names
*/