summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/ep1a
diff options
context:
space:
mode:
authorJennifer Averett <Jennifer.Averett@OARcorp.com>2011-08-23 16:28:22 +0000
committerJennifer Averett <Jennifer.Averett@OARcorp.com>2011-08-23 16:28:22 +0000
commit41265b23974eff7a1fa37f2b899de19dc7be82c9 (patch)
tree98b26910d146679b951be6beb3ad5dae08bfa06e /c/src/lib/libbsp/powerpc/ep1a
parent2011-08-23 Julien Delange <julien.delange@gmail.com> (diff)
downloadrtems-41265b23974eff7a1fa37f2b899de19dc7be82c9.tar.bz2
2011-08-23 Jennifer Averett <Jennifer.Averett@OARcorp.com>
* Makefile.am: Removed console.c and linked to the shared console.c. Note: This change was verified through compilation only. * console/console.c: Removed.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/ep1a')
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/Makefile.am2
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/console/console.c273
3 files changed, 7 insertions, 274 deletions
diff --git a/c/src/lib/libbsp/powerpc/ep1a/ChangeLog b/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
index 2d2044b661..d86f63ab25 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-23 Jennifer Averett <Jennifer.Averett@OARcorp.com>
+
+ * Makefile.am: Removed console.c and linked to the shared console.c.
+ Note: This change was verified through compilation only.
+ * console/console.c: Removed.
+
2011-06-07 Sebastian Huber <sebastian.huber@embedded-brains.de>
* configure.ac: Use standard cache BSP options.
diff --git a/c/src/lib/libbsp/powerpc/ep1a/Makefile.am b/c/src/lib/libbsp/powerpc/ep1a/Makefile.am
index 159d3d523f..beb4454400 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/Makefile.am
+++ b/c/src/lib/libbsp/powerpc/ep1a/Makefile.am
@@ -50,7 +50,7 @@ include_bsp_HEADERS = ../../powerpc/shared/console/uart.h \
../../powerpc/shared/residual/pnp.h \
../../powerpc/shared/console/consoleIo.h console/rsPMCQ1.h
# console
-libbsp_a_SOURCES += console/console.c console/ns16550cfg.c \
+libbsp_a_SOURCES += ../../shared/console.c console/ns16550cfg.c \
console/mc68360_scc.c console/rsPMCQ1.c console/alloc360.c \
console/init68360.c
diff --git a/c/src/lib/libbsp/powerpc/ep1a/console/console.c b/c/src/lib/libbsp/powerpc/ep1a/console/console.c
deleted file mode 100644
index 911b87bb04..0000000000
--- a/c/src/lib/libbsp/powerpc/ep1a/console/console.c
+++ /dev/null
@@ -1,273 +0,0 @@
-/*
- * This file contains the TTY driver for the ep1a
- *
- * This driver uses the termios pseudo driver.
- *
- * COPYRIGHT (c) 2008.
- * On-Line Applications Research Corporation (OAR).
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.com/license/LICENSE.
- *
- * $Id$
- */
-
-#include <bsp.h>
-#include <rtems/libio.h>
-#include <stdlib.h>
-#include <assert.h>
-#include <termios.h>
-
-#include "console.h"
-#include <rtems/bspIo.h>
-
-/*
- * Load configuration table
- */
-#include "config.c"
-
-#define NUM_CONSOLE_PORTS (sizeof(Console_Port_Tbl)/sizeof(console_tbl))
-
-console_data Console_Port_Data[NUM_CONSOLE_PORTS];
-unsigned long Console_Port_Count;
-rtems_device_minor_number Console_Port_Minor;
-
-/* PAGE
- *
- * console_open
- *
- * open a port as a termios console.
- *
- */
-rtems_device_driver console_open(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- rtems_status_code status;
- rtems_libio_open_close_args_t *args = arg;
- rtems_libio_ioctl_args_t IoctlArgs;
- struct termios Termios;
- rtems_termios_callbacks Callbacks;
- console_fns *c;
-
- /*
- * Verify the port number is valid.
- */
- if(minor>Console_Port_Count)
- {
- return RTEMS_INVALID_NUMBER;
- }
-
- /*
- * open the port as a termios console driver.
- */
- c = Console_Port_Tbl[minor].pDeviceFns;
- Callbacks.firstOpen = c->deviceFirstOpen;
- Callbacks.lastClose = c->deviceLastClose;
- Callbacks.pollRead = c->deviceRead;
- Callbacks.write = c->deviceWrite;
- Callbacks.setAttributes = c->deviceSetAttributes;
- Callbacks.stopRemoteTx =
- Console_Port_Tbl[minor].pDeviceFlow->deviceStopRemoteTx;
- Callbacks.startRemoteTx =
- Console_Port_Tbl[minor].pDeviceFlow->deviceStartRemoteTx;
- Callbacks.outputUsesInterrupts = c->deviceOutputUsesInterrupts;
- status = rtems_termios_open ( major, minor, arg, &Callbacks);
- Console_Port_Data[minor].termios_data = args->iop->data1;
-
- if(minor!=Console_Port_Minor)
- {
- /*
- * If this is not the console we do not want ECHO and
- * so forth
- */
- IoctlArgs.iop=args->iop;
- IoctlArgs.command=RTEMS_IO_GET_ATTRIBUTES;
- IoctlArgs.buffer=&Termios;
- rtems_termios_ioctl(&IoctlArgs);
- Termios.c_lflag=ICANON;
- IoctlArgs.command=RTEMS_IO_SET_ATTRIBUTES;
- rtems_termios_ioctl(&IoctlArgs);
- }
-
- if((args->iop->flags&LIBIO_FLAGS_READ) &&
- Console_Port_Tbl[minor].pDeviceFlow &&
- Console_Port_Tbl[minor].pDeviceFlow->deviceStartRemoteTx)
- {
- Console_Port_Tbl[minor].pDeviceFlow->deviceStartRemoteTx(minor);
- }
-
- return status;
-}
-
-rtems_device_driver console_close(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- rtems_libio_open_close_args_t *args = arg;
-
- if((args->iop->flags&LIBIO_FLAGS_READ) &&
- Console_Port_Tbl[minor].pDeviceFlow &&
- Console_Port_Tbl[minor].pDeviceFlow->deviceStopRemoteTx)
- {
- Console_Port_Tbl[minor].pDeviceFlow->deviceStopRemoteTx(minor);
- }
-
- return rtems_termios_close (arg);
-}
-
-rtems_device_driver console_read(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- return rtems_termios_read (arg);
-}
-
-rtems_device_driver console_write(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- return rtems_termios_write (arg);
-}
-
-rtems_device_driver console_control(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void * arg
-)
-{
- return rtems_termios_ioctl (arg);
-}
-
-/* PAGE
- *
- * console_initialize
- *
- * Routine called to initialize the console device driver.
- */
-rtems_device_driver console_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg
-)
-{
- rtems_status_code status;
-
- /*
- * initialize the termio interface.
- */
- rtems_termios_initialize();
-
- Console_Port_Count=NUM_CONSOLE_PORTS;
-
- for(minor=0;
- minor<Console_Port_Count;
- minor++)
- {
- /*
- * First perform the configuration dependant probe, then the
- * device dependant probe
- */
- if((!Console_Port_Tbl[minor].deviceProbe ||
- Console_Port_Tbl[minor].deviceProbe(minor)) &&
- Console_Port_Tbl[minor].pDeviceFns->deviceProbe(minor))
- {
- /*
- * Use this device for the console
- */
- break;
- }
- }
- if(minor==Console_Port_Count)
- {
- /*
- * Failed to find a working device
- */
- rtems_fatal_error_occurred(RTEMS_IO_ERROR);
- }
-
- Console_Port_Minor=minor;
-
- /*
- * Register Device Names
- */
-
- status = rtems_io_register_name("/dev/console",
- major,
- Console_Port_Minor );
- if (status != RTEMS_SUCCESSFUL)
- {
- rtems_fatal_error_occurred(status);
- }
- if ( Console_Port_Tbl[minor].pDeviceFns->deviceInitialize )
- Console_Port_Tbl[minor].pDeviceFns->deviceInitialize(
- Console_Port_Minor);
-
- for(minor++;minor<Console_Port_Count;minor++)
- {
- /*
- * First perform the configuration dependant probe, then the
- * device dependant probe
- */
- if((!Console_Port_Tbl[minor].deviceProbe ||
- Console_Port_Tbl[minor].deviceProbe(minor)) &&
- Console_Port_Tbl[minor].pDeviceFns->deviceProbe(minor))
- {
- status = rtems_io_register_name(
- Console_Port_Tbl[minor].sDeviceName,
- major,
- minor );
- if (status != RTEMS_SUCCESSFUL)
- {
- rtems_fatal_error_occurred(status);
- }
-
- /*
- * Initialize the hardware device.
- */
- if ( Console_Port_Tbl[minor].pDeviceFns->deviceInitialize )
- Console_Port_Tbl[minor].pDeviceFns->deviceInitialize( minor);
- }
- }
-
- return RTEMS_SUCCESSFUL;
-}
-
-/* const char arg to be compatible with BSP_output_char decl. */
-void
-debug_putc_onlcr(const char c)
-{
- volatile int i;
-
- /*
- * Note: Hack to get printk to work. Depends upon bit
- * and silverchip to initialize the port and just
- * forces a character to be polled out of com1
- * regardless of where the console is.
- */
-
- volatile unsigned char *ptr = (void *)0xff800000;
-
- if ('\n'==c){
- *ptr = '\r';
- __asm__ volatile("sync");
- for (i=0;i<0x0fff;i++);
- }
-
- *ptr = c;
- __asm__ volatile("sync");
- for (i=0;i<0x0fff;i++);
-}
-
-BSP_output_char_function_type BSP_output_char = debug_putc_onlcr;
-BSP_polling_getchar_function_type BSP_poll_char = NULL;
-