summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/mips/jmr3904
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-04-19 06:28:01 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-04-20 13:08:32 +0200
commitd7d66d7d4523b904c8ccc6aea3709dc0d5aa5bdc (patch)
treecaa54b4229e86a68c84ab5961af34e087dce5302 /c/src/lib/libbsp/mips/jmr3904
parentbsps/powerpc: Move shared btimer support (diff)
downloadrtems-d7d66d7d4523b904c8ccc6aea3709dc0d5aa5bdc.tar.bz2
bsps: Move console drivers to bsps
This patch is a part of the BSP source reorganization. Update #3285.
Diffstat (limited to 'c/src/lib/libbsp/mips/jmr3904')
-rw-r--r--c/src/lib/libbsp/mips/jmr3904/Makefile.am4
-rw-r--r--c/src/lib/libbsp/mips/jmr3904/console/console-io.c123
2 files changed, 2 insertions, 125 deletions
diff --git a/c/src/lib/libbsp/mips/jmr3904/Makefile.am b/c/src/lib/libbsp/mips/jmr3904/Makefile.am
index 67b357e470..5b9516beaf 100644
--- a/c/src/lib/libbsp/mips/jmr3904/Makefile.am
+++ b/c/src/lib/libbsp/mips/jmr3904/Makefile.am
@@ -27,8 +27,8 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/sbrk.c
# clock
librtemsbsp_a_SOURCES +=../../../../../../bsps/mips/jmr3904/clock/clockdrv.c
# console
-librtemsbsp_a_SOURCES += ../../shared/console-polled.c
-librtemsbsp_a_SOURCES += console/console-io.c
+librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/serial/console-polled.c
+librtemsbsp_a_SOURCES += ../../../../../../bsps/mips/jmr3904/console/console-io.c
# timer
librtemsbsp_a_SOURCES += timer/timer.c
#isr
diff --git a/c/src/lib/libbsp/mips/jmr3904/console/console-io.c b/c/src/lib/libbsp/mips/jmr3904/console/console-io.c
deleted file mode 100644
index a7f3204d25..0000000000
--- a/c/src/lib/libbsp/mips/jmr3904/console/console-io.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * This file contains the hardware specific portions of the TTY driver
- * for the serial ports on the jmr3904.
- *
- * Logic based on the jmr3904-io.c file in newlib 1.8.2
- */
-
-/*
- * COPYRIGHT (c) 1989-2000.
- * 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.org/license/LICENSE.
- */
-
-#include <bsp.h>
-#include <bsp/console-polled.h>
-#include <rtems/libio.h>
-#include <stdlib.h>
-#include <assert.h>
-
-/* external prototypes for monitor interface routines */
-
-#define READ_UINT8( _register_, _value_ ) \
- ((_value_) = *((volatile unsigned char *)(_register_)))
-
-#define WRITE_UINT8( _register_, _value_ ) \
- (*((volatile unsigned char *)(_register_)) = (_value_))
-
-#define READ_UINT16( _register_, _value_ ) \
- ((_value_) = *((volatile unsigned short *)(_register_)))
-
-#define WRITE_UINT16( _register_, _value_ ) \
- (*((volatile unsigned short *)(_register_)) = (_value_))
-
- /* - Board specific addresses for serial chip */
-#define DIAG_BASE 0xfffff300
-#define DIAG_SLCR (DIAG_BASE+0x00)
-#define DIAG_SLSR (DIAG_BASE+0x04)
-#define DIAG_SLDICR (DIAG_BASE+0x08)
-#define DIAG_SLDISR (DIAG_BASE+0x0C)
-#define DIAG_SFCR (DIAG_BASE+0x10)
-#define DIAG_SBRG (DIAG_BASE+0x14)
-#define DIAG_TFIFO (DIAG_BASE+0x20)
-#define DIAG_RFIFO (DIAG_BASE+0x30)
-
-#define BRG_T0 0x0000
-#define BRG_T2 0x0100
-#define BRG_T4 0x0200
-#define BRG_T5 0x0300
-
-/*
- * Eventually console-polled.c should hook to this better.
- */
-
-/*
- * console_initialize_hardware
- *
- * This routine initializes the console hardware.
- *
- */
-
-void console_initialize_hardware(void)
-{
- WRITE_UINT16 (DIAG_SLCR, 0x0020);
- WRITE_UINT16 (DIAG_SLDICR, 0x0000);
- WRITE_UINT16 (DIAG_SFCR, 0x0000);
- WRITE_UINT16 (DIAG_SBRG, BRG_T2 | 5);
-}
-
-/*
- * console_outbyte_polled
- *
- * This routine transmits a character using polling.
- */
-
-void console_outbyte_polled(
- int port,
- char ch
-)
-{
- unsigned short disr;
-
- for (;;) {
- READ_UINT16 (DIAG_SLDISR, disr);
- if (disr & 0x0002)
- break;
- }
- disr = disr & ~0x0002;
- WRITE_UINT8 (DIAG_TFIFO, (unsigned char) ch);
- WRITE_UINT16 (DIAG_SLDISR, disr);
-}
-
-/*
- * console_inbyte_nonblocking
- *
- * This routine polls for a character.
- */
-
-int console_inbyte_nonblocking(
- int port
-)
-{
- unsigned char c;
- unsigned short disr;
-
- READ_UINT16 (DIAG_SLDISR, disr);
- if (disr & 0x0001) {
- disr = disr & ~0x0001;
- READ_UINT8 (DIAG_RFIFO, c);
- WRITE_UINT16 (DIAG_SLDISR, disr);
- return (char) c;
- }
- return -1;
-}
-
-#include <rtems/bspIo.h>
-
-static void JMR3904_output_char(char c) { console_outbyte_polled( 0, c ); }
-
-BSP_output_char_function_type BSP_output_char = JMR3904_output_char;
-BSP_polling_getchar_function_type BSP_poll_char = NULL;