diff options
author | RajithaY <rajithax.yerrumsetty@intel.com> | 2017-04-25 03:31:15 -0700 |
---|---|---|
committer | Rajitha Yerrumchetty <rajithax.yerrumsetty@intel.com> | 2017-05-22 06:48:08 +0000 |
commit | bb756eebdac6fd24e8919e2c43f7d2c8c4091f59 (patch) | |
tree | ca11e03542edf2d8f631efeca5e1626d211107e3 /qemu/roms/u-boot/drivers/serial/lpc32xx_hsuart.c | |
parent | a14b48d18a9ed03ec191cf16b162206998a895ce (diff) |
Adding qemu as a submodule of KVMFORNFV
This Patch includes the changes to add qemu as a submodule to
kvmfornfv repo and make use of the updated latest qemu for the
execution of all testcase
Change-Id: I1280af507a857675c7f81d30c95255635667bdd7
Signed-off-by:RajithaY<rajithax.yerrumsetty@intel.com>
Diffstat (limited to 'qemu/roms/u-boot/drivers/serial/lpc32xx_hsuart.c')
-rw-r--r-- | qemu/roms/u-boot/drivers/serial/lpc32xx_hsuart.c | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/qemu/roms/u-boot/drivers/serial/lpc32xx_hsuart.c b/qemu/roms/u-boot/drivers/serial/lpc32xx_hsuart.c deleted file mode 100644 index c8926a894..000000000 --- a/qemu/roms/u-boot/drivers/serial/lpc32xx_hsuart.c +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Copyright (C) 2011 Vladimir Zapolskiy <vz@mleia.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <asm/arch/cpu.h> -#include <asm/arch/clk.h> -#include <asm/arch/uart.h> -#include <asm/io.h> -#include <serial.h> -#include <linux/compiler.h> - -DECLARE_GLOBAL_DATA_PTR; - -static struct hsuart_regs *hsuart = (struct hsuart_regs *)HS_UART_BASE; - -static void lpc32xx_serial_setbrg(void) -{ - u32 div; - - /* UART rate = PERIPH_CLK / ((HSU_RATE + 1) x 14) */ - div = (get_serial_clock() / 14 + gd->baudrate / 2) / gd->baudrate - 1; - if (div > 255) - div = 255; - - writel(div, &hsuart->rate); -} - -static int lpc32xx_serial_getc(void) -{ - while (!(readl(&hsuart->level) & HSUART_LEVEL_RX)) - /* NOP */; - - return readl(&hsuart->rx) & HSUART_RX_DATA; -} - -static void lpc32xx_serial_putc(const char c) -{ - if (c == '\n') - serial_putc('\r'); - - writel(c, &hsuart->tx); - - /* Wait for character to be sent */ - while (readl(&hsuart->level) & HSUART_LEVEL_TX) - /* NOP */; -} - -static int lpc32xx_serial_tstc(void) -{ - if (readl(&hsuart->level) & HSUART_LEVEL_RX) - return 1; - - return 0; -} - -static int lpc32xx_serial_init(void) -{ - lpc32xx_serial_setbrg(); - - /* Disable hardware RTS and CTS flow control, set up RX and TX FIFO */ - writel(HSUART_CTRL_TMO_16 | HSUART_CTRL_HSU_OFFSET(20) | - HSUART_CTRL_HSU_RX_TRIG_32 | HSUART_CTRL_HSU_TX_TRIG_0, - &hsuart->ctrl); - return 0; -} - -static struct serial_device lpc32xx_serial_drv = { - .name = "lpc32xx_serial", - .start = lpc32xx_serial_init, - .stop = NULL, - .setbrg = lpc32xx_serial_setbrg, - .putc = lpc32xx_serial_putc, - .puts = default_serial_puts, - .getc = lpc32xx_serial_getc, - .tstc = lpc32xx_serial_tstc, -}; - -void lpc32xx_serial_initialize(void) -{ - serial_register(&lpc32xx_serial_drv); -} - -__weak struct serial_device *default_serial_console(void) -{ - return &lpc32xx_serial_drv; -} |