From d7d66d7d4523b904c8ccc6aea3709dc0d5aa5bdc Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 19 Apr 2018 06:28:01 +0200 Subject: bsps: Move console drivers to bsps This patch is a part of the BSP source reorganization. Update #3285. --- c/src/lib/libbsp/mips/malta/Makefile.am | 4 +- c/src/lib/libbsp/mips/malta/console/conscfg.c | 158 --------------------- .../lib/libbsp/mips/malta/console/printk_support.c | 54 ------- 3 files changed, 2 insertions(+), 214 deletions(-) delete mode 100644 c/src/lib/libbsp/mips/malta/console/conscfg.c delete mode 100644 c/src/lib/libbsp/mips/malta/console/printk_support.c (limited to 'c/src/lib/libbsp/mips/malta') diff --git a/c/src/lib/libbsp/mips/malta/Makefile.am b/c/src/lib/libbsp/mips/malta/Makefile.am index c875d4b09c..c955b58a4a 100644 --- a/c/src/lib/libbsp/mips/malta/Makefile.am +++ b/c/src/lib/libbsp/mips/malta/Makefile.am @@ -41,8 +41,8 @@ librtemsbsp_a_SOURCES +=../../../../../../bsps/mips/shared/clock/mips_timer.S librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/serial/legacy-console.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/serial/legacy-console-control.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/serial/legacy-console-select.c -librtemsbsp_a_SOURCES += console/conscfg.c -librtemsbsp_a_SOURCES += console/printk_support.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/mips/malta/console/conscfg.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/mips/malta/console/printk_support.c # timer librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/btimer/btimer-stub.c diff --git a/c/src/lib/libbsp/mips/malta/console/conscfg.c b/c/src/lib/libbsp/mips/malta/console/conscfg.c deleted file mode 100644 index 8d84c9321c..0000000000 --- a/c/src/lib/libbsp/mips/malta/console/conscfg.c +++ /dev/null @@ -1,158 +0,0 @@ -/** - * @file - * - * This file contains the libchip configuration information - * to instantiate the libchip driver for the serial ports. - */ - -/* - * COPYRIGHT (c) 1989-2012. - * 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 /* write */ - -#include -#include -#include -#include -#include - -#if 1 -#define COM_CONSOLE_FUNCTIONS &ns16550_fns_polled -#else -#define COM_CONSOLE_FUNCTIONS &ns16550_fns -#endif - -/* - * Base IO for UART - */ -#define COM1_BASE_IO 0x3F8 -#define COM2_BASE_IO 0x3E8 - -// #define CLOCK_RATE 368640 -#define CLOCK_RATE (115200 * 16) - -#define COM_IO_BASE_ADDRESS (0xa0000000UL | 0x18000000UL) - -static uint8_t com_get_register(uintptr_t addr, uint8_t i); -static void com_set_register(uintptr_t addr, uint8_t i, uint8_t val); -static uint8_t tty2_get_register(uintptr_t addr, uint8_t i); -static void tty2_set_register(uintptr_t addr, uint8_t i, uint8_t val); - - -uint8_t com_get_register(uintptr_t addr, uint8_t i) -{ - uint8_t val; - volatile uint8_t *ptr; - ptr = (volatile uint8_t *) COM_IO_BASE_ADDRESS; - ptr += addr; - ptr += i; - val = *ptr; - - return val; -} - -void com_set_register(uintptr_t addr, uint8_t i, uint8_t val) -{ - volatile uint8_t *ptr; - - ptr = (volatile uint8_t *) COM_IO_BASE_ADDRESS; - ptr += addr; - ptr += i; - *ptr = val; -} - -uint8_t tty2_get_register(uintptr_t addr, uint8_t i) -{ - uint8_t val; - volatile uint8_t *ptr; - - ptr = (volatile uint8_t *) COM_IO_BASE_ADDRESS; - ptr += addr; - ptr += (i * 8); - val = *ptr; - - return val; -} - -void tty2_set_register(uintptr_t addr, uint8_t i, uint8_t val) -{ - volatile uint8_t *ptr; - - ptr = (volatile uint8_t *) COM_IO_BASE_ADDRESS; - ptr += addr; - ptr += (i * 8); - *ptr = val; -} - -console_tbl Console_Configuration_Ports[] = { - { - "/dev/tty0", /* sDeviceName */ - SERIAL_NS16550, /* deviceType */ - COM_CONSOLE_FUNCTIONS, /* pDeviceFns */ - NULL, /* deviceProbe, assume it is there */ - NULL, /* pDeviceFlow */ - 16, /* ulMargin */ - 8, /* ulHysteresis */ - (void *) 9600, /* Baud Rate */ /* pDeviceParams */ - COM1_BASE_IO, /* ulCtrlPort1 */ - 0x00000000, /* ulCtrlPort2 */ - COM1_BASE_IO, /* ulDataPort */ - com_get_register, /* getRegister */ - com_set_register, /* setRegister */ - NULL,/* unused */ /* getData */ - NULL,/* unused */ /* setData */ - CLOCK_RATE, /* ulClock */ - MALTA_IRQ_TTY0 /* ulIntVector -- base for port */ - }, - { - "/dev/tty1", /* sDeviceName */ - SERIAL_NS16550, /* deviceType */ - COM_CONSOLE_FUNCTIONS, /* pDeviceFns */ - NULL, /* deviceProbe, assume it is there */ - NULL, /* pDeviceFlow */ - 16, /* ulMargin */ - 8, /* ulHysteresis */ - (void *) 9600, /* Baud Rate */ /* pDeviceParams */ - COM2_BASE_IO, /* ulCtrlPort1 */ - 0x00000000, /* ulCtrlPort2 */ - COM2_BASE_IO, /* ulDataPort */ - com_get_register, /* getRegister */ - com_set_register, /* setRegister */ - NULL,/* unused */ /* getData */ - NULL,/* unused */ /* setData */ - CLOCK_RATE, /* ulClock */ - MALTA_IRQ_TTY1 /* ulIntVector -- base for port */ - }, - { - "/dev/tty2", /* sDeviceName */ - SERIAL_NS16550, /* deviceType */ - COM_CONSOLE_FUNCTIONS, /* pDeviceFns */ - NULL, /* deviceProbe, assume it is there */ - NULL, /* pDeviceFlow */ - 16, /* ulMargin */ - 8, /* ulHysteresis */ - (void *) 9600, /* Baud Rate */ /* pDeviceParams */ - 0, /* IGNORED */ /* ulCtrlPort1 */ - 0, /* IGNORED */ /* ulCtrlPort2 */ - 0, /* IGNORED */ /* ulDataPort */ - tty2_get_register, /* getRegister */ - tty2_set_register, /* setRegister */ - NULL,/* unused */ /* getData */ - NULL,/* unused */ /* setData */ - CLOCK_RATE, /* ulClock */ - MALTA_CPU_INT2 /* ulIntVector -- base for port */ - }, -}; - -/* - * Define a variable that contains the number of statically configured - * console devices. - */ -unsigned long Console_Configuration_Count = \ - (sizeof(Console_Configuration_Ports)/sizeof(console_tbl)); diff --git a/c/src/lib/libbsp/mips/malta/console/printk_support.c b/c/src/lib/libbsp/mips/malta/console/printk_support.c deleted file mode 100644 index e548485222..0000000000 --- a/c/src/lib/libbsp/mips/malta/console/printk_support.c +++ /dev/null @@ -1,54 +0,0 @@ -/** - * @file - * - * This file contains a stub for the required printk support. - */ - -/* - * COPYRIGHT (c) 1989-2012. - * 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 -#include -#include -#include -#include - -rtems_device_minor_number BSPPrintkPort = 0; - -void BSP_com_outch(char ch); -int BSP_com_inch( void ); - -/* - * Following assume all are ns16650 - */ -void BSP_com_outch(char ch) -{ - console_tbl *cptr; - - cptr = &Console_Configuration_Ports[BSPPrintkPort]; - - return ns16550_outch_polled( cptr, ch ); -} - -int BSP_com_inch( void ) -{ - int result; - console_tbl *cptr; - - cptr = &Console_Configuration_Ports[BSPPrintkPort]; - - do { - result = ns16550_inch_polled( cptr ); - } while (result == -1); - - return result; -} - -BSP_output_char_function_type BSP_output_char = BSP_com_outch; -BSP_polling_getchar_function_type BSP_poll_char = BSP_com_inch; -- cgit v1.2.3