summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1998-05-04 12:40:21 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1998-05-04 12:40:21 +0000
commit55951bc1e68124be71ed59eb81f786ead09ff70b (patch)
tree5cd891980f6228945c72ba3c95c624323ff5b2b3 /c/src/lib/libbsp/sparc
parentCorrected and added sections to link cleanly under powerpc-rtems (ELF). (diff)
downloadrtems-55951bc1e68124be71ed59eb81f786ead09ff70b.tar.bz2
Switched to termios callback structure.
Diffstat (limited to 'c/src/lib/libbsp/sparc')
-rw-r--r--c/src/lib/libbsp/sparc/erc32/console/console.c49
1 files changed, 30 insertions, 19 deletions
diff --git a/c/src/lib/libbsp/sparc/erc32/console/console.c b/c/src/lib/libbsp/sparc/erc32/console/console.c
index 29fdc2770e..024ed404de 100644
--- a/c/src/lib/libbsp/sparc/erc32/console/console.c
+++ b/c/src/lib/libbsp/sparc/erc32/console/console.c
@@ -420,31 +420,42 @@ rtems_device_driver console_open(
void * arg
)
{
- rtems_status_code sc;
+ rtems_status_code sc;
#if defined(CONSOLE_USE_INTERRUPTS)
- rtems_libio_open_close_args_t *args = arg;
+ rtems_libio_open_close_args_t *args = arg;
+ static const rtems_termios_callbacks intrCallbacks = {
+ NULL, /* firstOpen */
+ NULL, /* lastClose */
+ NULL, /* pollRead */
+ console_write_support, /* write */
+ NULL, /* setAttributes */
+ NULL, /* stopRemoteTx */
+ NULL, /* startRemoteTx */
+ 0 /* outputUsesInterrupts */
+ };
+#else
+ static const rtems_termios_callbacks pollCallbacks = {
+ NULL, /* firstOpen */
+ NULL, /* lastClose */
+ console_inbyte_nonblocking, /* pollRead */
+ console_write_support, /* write */
+ NULL, /* setAttributes */
+ NULL, /* stopRemoteTx */
+ NULL, /* startRemoteTx */
+ 0 /* outputUsesInterrupts */
+ };
#endif
- assert( minor <= 1 );
- if ( minor > 2 )
- return RTEMS_INVALID_NUMBER;
+ assert( minor <= 1 );
+ if ( minor > 2 )
+ return RTEMS_INVALID_NUMBER;
#if defined(CONSOLE_USE_INTERRUPTS)
- sc = rtems_termios_open (major, minor, arg,
- NULL,
- NULL,
- NULL,
- console_write_support,
- 0);
-
- console_termios_data[ minor ] = args->iop->data1;
+ sc = rtems_termios_open (major, minor, arg, &intrCallbacks);
+
+ console_termios_data[ minor ] = args->iop->data1;
#else
- sc = rtems_termios_open (major, minor, arg,
- NULL,
- NULL,
- console_inbyte_nonblocking,
- console_write_support,
- 0);
+ sc = rtems_termios_open (major, minor, arg, &pollCallbacks);
#endif
return RTEMS_SUCCESSFUL;