tizen 2.3.1 release
[platform/kernel/u-boot.git] / drivers / serial / altera_uart.c
index d620528..045f119 100644 (file)
@@ -2,7 +2,23 @@
  * (C) Copyright 2004, Psyent Corporation <www.psyent.com>
  * Scott McNutt <smcnutt@psyent.com>
  *
- * SPDX-License-Identifier:    GPL-2.0+
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
  */
 
 
@@ -10,8 +26,6 @@
 #include <watchdog.h>
 #include <asm/io.h>
 #include <nios2-io.h>
-#include <linux/compiler.h>
-#include <serial.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -23,33 +37,27 @@ static nios_uart_t *uart = (nios_uart_t *) CONFIG_SYS_NIOS_CONSOLE;
 
 #if defined(CONFIG_SYS_NIOS_FIXEDBAUD)
 
-/*
- * Everything's already setup for fixed-baud PTF
+/* Everything's already setup for fixed-baud PTF
  * assignment
  */
-static void altera_serial_setbrg(void)
-{
-}
-
-static int altera_serial_init(void)
-{
-       return 0;
-}
+void serial_setbrg (void){ return; }
+int serial_init (void) { return (0);}
 
 #else
 
-static void altera_serial_setbrg(void)
+void serial_setbrg (void)
 {
        unsigned div;
 
        div = (CONFIG_SYS_CLK_FREQ/gd->baudrate)-1;
        writel (div, &uart->divisor);
+       return;
 }
 
-static int altera_serial_init(void)
+int serial_init (void)
 {
-       serial_setbrg();
-       return 0;
+       serial_setbrg ();
+       return (0);
 }
 
 #endif /* CONFIG_SYS_NIOS_FIXEDBAUD */
@@ -57,7 +65,7 @@ static int altera_serial_init(void)
 /*-----------------------------------------------------------------------
  * UART CONSOLE
  *---------------------------------------------------------------------*/
-static void altera_serial_putc(char c)
+void serial_putc (char c)
 {
        if (c == '\n')
                serial_putc ('\r');
@@ -66,35 +74,21 @@ static void altera_serial_putc(char c)
        writel ((unsigned char)c, &uart->txdata);
 }
 
-static int altera_serial_tstc(void)
+void serial_puts (const char *s)
+{
+       while (*s != 0) {
+               serial_putc (*s++);
+       }
+}
+
+int serial_tstc (void)
 {
        return (readl (&uart->status) & NIOS_UART_RRDY);
 }
 
-static int altera_serial_getc(void)
+int serial_getc (void)
 {
        while (serial_tstc () == 0)
                WATCHDOG_RESET ();
        return (readl (&uart->rxdata) & 0x00ff );
 }
-
-static struct serial_device altera_serial_drv = {
-       .name   = "altera_serial",
-       .start  = altera_serial_init,
-       .stop   = NULL,
-       .setbrg = altera_serial_setbrg,
-       .putc   = altera_serial_putc,
-       .puts   = default_serial_puts,
-       .getc   = altera_serial_getc,
-       .tstc   = altera_serial_tstc,
-};
-
-void altera_serial_initialize(void)
-{
-       serial_register(&altera_serial_drv);
-}
-
-__weak struct serial_device *default_serial_console(void)
-{
-       return &altera_serial_drv;
-}