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/arm/lpc176x/Makefile.am | 6 +- .../libbsp/arm/lpc176x/console/console-config.c | 192 --------------------- 2 files changed, 3 insertions(+), 195 deletions(-) delete mode 100644 c/src/lib/libbsp/arm/lpc176x/console/console-config.c (limited to 'c/src/lib/libbsp/arm/lpc176x') diff --git a/c/src/lib/libbsp/arm/lpc176x/Makefile.am b/c/src/lib/libbsp/arm/lpc176x/Makefile.am index 49e6620a9e..ba2475febb 100644 --- a/c/src/lib/libbsp/arm/lpc176x/Makefile.am +++ b/c/src/lib/libbsp/arm/lpc176x/Makefile.am @@ -59,9 +59,9 @@ librtemsbsp_a_SOURCES += ../shared/armv7m/irq/armv7m-irq-dispatch.c librtemsbsp_a_SOURCES += irq/irq.c # Console -librtemsbsp_a_SOURCES += ../../shared/console-termios-init.c -librtemsbsp_a_SOURCES += ../../shared/console-termios.c -librtemsbsp_a_SOURCES += console/console-config.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/serial/console-termios-init.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/serial/console-termios.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/lpc176x/console/console-config.c # Clock librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/clock/clock-nxp-lpc.c diff --git a/c/src/lib/libbsp/arm/lpc176x/console/console-config.c b/c/src/lib/libbsp/arm/lpc176x/console/console-config.c deleted file mode 100644 index c80932daf7..0000000000 --- a/c/src/lib/libbsp/arm/lpc176x/console/console-config.c +++ /dev/null @@ -1,192 +0,0 @@ -/** - * @file - * - * @ingroup lpc176x - * - * @brief Console configuration. - */ - -/* - * Copyright (c) 2008-2014 embedded brains GmbH. All rights reserved. - * - * embedded brains GmbH - * Dornierstr. 4 - * 82178 Puchheim - * Germany - * - * - * 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 - -/** - * @brief Gets the uart register according to the current address. - * - * @param addr Register address. - * @param i Index register. - * @return Uart register. - */ -static inline uint8_t lpc176x_uart_get_register( - const uintptr_t addr, - const uint8_t i -) -{ - volatile uint32_t *reg = (volatile uint32_t *) addr; - - return (uint8_t) reg[ i ]; -} - -/** - * @brief Sets the uart register address according to the value passed. - * - * @param addr Register address. - * @param i Index register. - * @param val Value to set. - */ -static inline void lpc176x_uart_set_register( - const uintptr_t addr, - const uint8_t i, - const uint8_t val -) -{ - volatile uint32_t *reg = (volatile uint32_t *) addr; - - reg[ i ] = val; -} - -static bool lpc176x_uart1_probe(rtems_termios_device_context *ctx) -{ - (void)ctx; - - lpc176x_module_enable( LPC176X_MODULE_UART_1, LPC176X_MODULE_PCLK_DEFAULT ); - - lpc176x_pin_select( LPC176X_PIN_UART_1_TXD, LPC176X_PIN_FUNCTION_01 ); - lpc176x_pin_select( LPC176X_PIN_UART_1_RXD, LPC176X_PIN_FUNCTION_01 ); - - return true; -} - -#ifdef LPC176X_CONFIG_UART_2 -static bool lpc176x_uart2_probe(rtems_termios_device_context *ctx) -{ - (void)ctx; - - lpc176x_module_enable( LPC176X_MODULE_UART_2, LPC176X_MODULE_PCLK_DEFAULT ); - - lpc176x_pin_select( LPC176X_PIN_UART_2_TXD, LPC176X_PIN_FUNCTION_01 ); - lpc176x_pin_select( LPC176X_PIN_UART_2_RXD, LPC176X_PIN_FUNCTION_01 ); - - return true; -} -#endif - -#ifdef LPC176X_CONFIG_UART_3 -static bool lpc176x_uart3_probe(rtems_termios_device_context *ctx) -{ - (void)ctx; - - lpc176x_module_enable( LPC176X_MODULE_UART_3, LPC176X_MODULE_PCLK_DEFAULT ); - - lpc176x_pin_select( LPC176X_PIN_UART_3_TXD, LPC176X_PIN_FUNCTION_10 ); - lpc176x_pin_select( LPC176X_PIN_UART_3_RXD, LPC176X_PIN_FUNCTION_10 ); - - return true; -} -#endif - -#ifdef LPC176X_CONFIG_CONSOLE -static ns16550_context lpc176x_uart_context_0 = { - .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("UART 0"), - .get_reg = lpc176x_uart_get_register, - .set_reg = lpc176x_uart_set_register, - .port = UART0_BASE_ADDR, - .irq = LPC176X_IRQ_UART_0, - .clock = LPC176X_PCLK, - .initial_baud = LPC176X_UART_BAUD, - .has_fractional_divider_register = true -}; -#endif - -#ifdef LPC176X_CONFIG_UART_1 -static ns16550_context lpc176x_uart_context_1 = { - .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("UART 1"), - .get_reg = lpc176x_uart_get_register, - .set_reg = lpc176x_uart_set_register, - .port = UART1_BASE_ADDR, - .irq = LPC176X_IRQ_UART_1, - .clock = LPC176X_PCLK, - .initial_baud = LPC176X_UART_BAUD, - .has_fractional_divider_register = true -}; -#endif - -#ifdef LPC176X_CONFIG_UART_2 -static ns16550_context lpc176x_uart_context_2 = { - .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("UART 2"), - .get_reg = lpc176x_uart_get_register, - .set_reg = lpc176x_uart_set_register, - .port = UART2_BASE_ADDR, - .irq = LPC176X_IRQ_UART_2, - .clock = LPC176X_PCLK, - .initial_baud = LPC176X_UART_BAUD, - .has_fractional_divider_register = true -}; -#endif - -#ifdef LPC176X_CONFIG_UART_3 -static ns16550_context lpc176x_uart_context_3 = { - .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("UART 3"), - .get_reg = lpc176x_uart_get_register, - .set_reg = lpc176x_uart_set_register, - .port = UART3_BASE_ADDR, - .irq = LPC176X_IRQ_UART_3, - .clock = LPC176X_PCLK, - .initial_baud = LPC176X_UART_BAUD, - .has_fractional_divider_register = true -}; -#endif - -const console_device console_device_table[] = { - #ifdef LPC176X_CONFIG_CONSOLE - { - .device_file = "/dev/ttyS0", - .probe = console_device_probe_default, - .handler = &ns16550_handler_interrupt, - .context = &lpc176x_uart_context_0.base - }, - #endif - #ifdef LPC176X_CONFIG_UART_1 - { - .device_file = "/dev/ttyS1", - .probe = lpc176x_uart1_probe, - .handler = &ns16550_handler_interrupt, - .context = &lpc176x_uart_context_1.base - }, - #endif - #ifdef LPC176X_CONFIG_UART_2 - { - .device_file = "/dev/ttyS2", - .probe = lpc176x_uart2_probe, - .handler = &ns16550_handler_interrupt, - .context = &lpc176x_uart_context_2.base - }, - #endif - #ifdef LPC176X_CONFIG_UART_3 - { - .device_file = "/dev/ttyS3", - .probe = lpc176x_uart3_probe, - .handler = &ns16550_handler_interrupt, - .context = &lpc176x_uart_context_3.base - }, - #endif -}; - -const size_t console_device_count = RTEMS_ARRAY_SIZE(console_device_table); -- cgit v1.2.3