diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-04-19 06:28:01 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-04-20 13:08:32 +0200 |
commit | d7d66d7d4523b904c8ccc6aea3709dc0d5aa5bdc (patch) | |
tree | caa54b4229e86a68c84ab5961af34e087dce5302 /c/src/lib/libbsp/arm/lpc24xx | |
parent | bsps/powerpc: Move shared btimer support (diff) | |
download | rtems-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/arm/lpc24xx')
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/Makefile.am | 12 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/console/console-config.c | 134 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-1.c | 40 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-2.c | 40 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-3.c | 40 |
5 files changed, 6 insertions, 260 deletions
diff --git a/c/src/lib/libbsp/arm/lpc24xx/Makefile.am b/c/src/lib/libbsp/arm/lpc24xx/Makefile.am index ee2b7b4da0..a597be7e05 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/Makefile.am +++ b/c/src/lib/libbsp/arm/lpc24xx/Makefile.am @@ -71,12 +71,12 @@ librtemsbsp_a_SOURCES += irq/irq.c librtemsbsp_a_SOURCES += irq/irq-dispatch.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 += console/uart-probe-1.c -librtemsbsp_a_SOURCES += console/uart-probe-2.c -librtemsbsp_a_SOURCES += console/uart-probe-3.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/lpc24xx/console/console-config.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/lpc24xx/console/uart-probe-1.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/lpc24xx/console/uart-probe-2.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/lpc24xx/console/uart-probe-3.c # Clock librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/clock/clock-nxp-lpc.c diff --git a/c/src/lib/libbsp/arm/lpc24xx/console/console-config.c b/c/src/lib/libbsp/arm/lpc24xx/console/console-config.c deleted file mode 100644 index de94552c27..0000000000 --- a/c/src/lib/libbsp/arm/lpc24xx/console/console-config.c +++ /dev/null @@ -1,134 +0,0 @@ -/** - * @file - * - * @ingroup lpc24xx - * - * @brief Console configuration. - */ - -/* - * Copyright (c) 2008-2014 embedded brains GmbH. All rights reserved. - * - * embedded brains GmbH - * Dornierstr. 4 - * 82178 Puchheim - * Germany - * <rtems@embedded-brains.de> - * - * 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 <rtems/console.h> - -#include <libchip/ns16550.h> - -#include <bsp.h> -#include <bsp/lpc24xx.h> -#include <bsp/irq.h> -#include <bsp/io.h> -#include <bsp/console-termios.h> - -static uint8_t lpc24xx_uart_get_register(uintptr_t addr, uint8_t i) -{ - volatile uint32_t *reg = (volatile uint32_t *) addr; - - return (uint8_t) reg [i]; -} - -static void lpc24xx_uart_set_register(uintptr_t addr, uint8_t i, uint8_t val) -{ - volatile uint32_t *reg = (volatile uint32_t *) addr; - - reg [i] = val; -} - -#ifdef LPC24XX_CONFIG_CONSOLE -static ns16550_context lpc24xx_uart_context_0 = { - .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("UART 0"), - .get_reg = lpc24xx_uart_get_register, - .set_reg = lpc24xx_uart_set_register, - .port = UART0_BASE_ADDR, - .irq = LPC24XX_IRQ_UART_0, - .clock = LPC24XX_PCLK, - .initial_baud = LPC24XX_UART_BAUD, - .has_fractional_divider_register = true -}; -#endif - -#ifdef LPC24XX_CONFIG_UART_1 -static ns16550_context lpc24xx_uart_context_1 = { - .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("UART 1"), - .get_reg = lpc24xx_uart_get_register, - .set_reg = lpc24xx_uart_set_register, - .port = UART1_BASE_ADDR, - .irq = LPC24XX_IRQ_UART_1, - .clock = LPC24XX_PCLK, - .initial_baud = LPC24XX_UART_BAUD, - .has_fractional_divider_register = true -}; -#endif - -#ifdef LPC24XX_CONFIG_UART_2 -static ns16550_context lpc24xx_uart_context_2 = { - .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("UART 2"), - .get_reg = lpc24xx_uart_get_register, - .set_reg = lpc24xx_uart_set_register, - .port = UART2_BASE_ADDR, - .irq = LPC24XX_IRQ_UART_2, - .clock = LPC24XX_PCLK, - .initial_baud = LPC24XX_UART_BAUD, - .has_fractional_divider_register = true -}; -#endif - -#ifdef LPC24XX_CONFIG_UART_3 -static ns16550_context lpc24xx_uart_context_3 = { - .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("UART 3"), - .get_reg = lpc24xx_uart_get_register, - .set_reg = lpc24xx_uart_set_register, - .port = UART3_BASE_ADDR, - .irq = LPC24XX_IRQ_UART_3, - .clock = LPC24XX_PCLK, - .initial_baud = LPC24XX_UART_BAUD, - .has_fractional_divider_register = true -}; -#endif - -const console_device console_device_table[] = { - #ifdef LPC24XX_CONFIG_CONSOLE - { - .device_file = "/dev/ttyS0", - .probe = console_device_probe_default, - .handler = &ns16550_handler_interrupt, - .context = &lpc24xx_uart_context_0.base - }, - #endif - #ifdef LPC24XX_CONFIG_UART_1 - { - .device_file = "/dev/ttyS1", - .probe = lpc24xx_uart_probe_1, - .handler = &ns16550_handler_interrupt, - .context = &lpc24xx_uart_context_1.base - }, - #endif - #ifdef LPC24XX_CONFIG_UART_2 - { - .device_file = "/dev/ttyS2", - .probe = lpc24xx_uart_probe_2, - .handler = &ns16550_handler_interrupt, - .context = &lpc24xx_uart_context_2.base - }, - #endif - #ifdef LPC24XX_CONFIG_UART_3 - { - .device_file = "/dev/ttyS3", - .probe = lpc24xx_uart_probe_3, - .handler = &ns16550_handler_interrupt, - .context = &lpc24xx_uart_context_3.base - }, - #endif -}; - -const size_t console_device_count = RTEMS_ARRAY_SIZE(console_device_table); diff --git a/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-1.c b/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-1.c deleted file mode 100644 index 3b5f08059f..0000000000 --- a/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-1.c +++ /dev/null @@ -1,40 +0,0 @@ -/** - * @file - * - * @ingroup lpc24xx - * - * @brief UART 1 probe. - */ - -/* - * Copyright (c) 2011-2014 embedded brains GmbH. All rights reserved. - * - * embedded brains GmbH - * Dornierstr. 4 - * 82178 Puchheim - * Germany - * <rtems@embedded-brains.de> - * - * 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 <libchip/ns16550.h> - -#include <bsp.h> -#include <bsp/io.h> - -bool lpc24xx_uart_probe_1(rtems_termios_device_context *context) -{ - static const lpc24xx_pin_range pins [] = { - LPC24XX_PIN_UART_1_TXD_P0_15, - LPC24XX_PIN_UART_1_RXD_P0_16, - LPC24XX_PIN_TERMINAL - }; - - lpc24xx_module_enable(LPC24XX_MODULE_UART_1, LPC24XX_MODULE_PCLK_DEFAULT); - lpc24xx_pin_config(&pins [0], LPC24XX_PIN_SET_FUNCTION); - - return ns16550_probe(context); -} diff --git a/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-2.c b/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-2.c deleted file mode 100644 index d45dbb755b..0000000000 --- a/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-2.c +++ /dev/null @@ -1,40 +0,0 @@ -/** - * @file - * - * @ingroup lpc24xx - * - * @brief UART 2 probe. - */ - -/* - * Copyright (c) 2011-2014 embedded brains GmbH. All rights reserved. - * - * embedded brains GmbH - * Dornierstr. 4 - * 82178 Puchheim - * Germany - * <rtems@embedded-brains.de> - * - * 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 <libchip/ns16550.h> - -#include <bsp.h> -#include <bsp/io.h> - -bool lpc24xx_uart_probe_2(rtems_termios_device_context *context) -{ - static const lpc24xx_pin_range pins [] = { - LPC24XX_PIN_UART_2_TXD_P0_10, - LPC24XX_PIN_UART_2_RXD_P0_11, - LPC24XX_PIN_TERMINAL - }; - - lpc24xx_module_enable(LPC24XX_MODULE_UART_2, LPC24XX_MODULE_PCLK_DEFAULT); - lpc24xx_pin_config(&pins [0], LPC24XX_PIN_SET_FUNCTION); - - return ns16550_probe(context); -} diff --git a/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-3.c b/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-3.c deleted file mode 100644 index fad932ef9e..0000000000 --- a/c/src/lib/libbsp/arm/lpc24xx/console/uart-probe-3.c +++ /dev/null @@ -1,40 +0,0 @@ -/** - * @file - * - * @ingroup lpc24xx - * - * @brief UART 3 probe. - */ - -/* - * Copyright (c) 2011-2014 embedded brains GmbH. All rights reserved. - * - * embedded brains GmbH - * Dornierstr. 4 - * 82178 Puchheim - * Germany - * <rtems@embedded-brains.de> - * - * 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 <libchip/ns16550.h> - -#include <bsp.h> -#include <bsp/io.h> - -bool lpc24xx_uart_probe_3(rtems_termios_device_context *context) -{ - static const lpc24xx_pin_range pins [] = { - LPC24XX_PIN_UART_3_TXD_P0_0, - LPC24XX_PIN_UART_3_RXD_P0_1, - LPC24XX_PIN_TERMINAL - }; - - lpc24xx_module_enable(LPC24XX_MODULE_UART_3, LPC24XX_MODULE_PCLK_DEFAULT); - lpc24xx_pin_config(&pins [0], LPC24XX_PIN_SET_FUNCTION); - - return ns16550_probe(context); -} |