[coreboot-gerrit] Patch set updated for coreboot: ded94c0 console: Add drivers/uart

Kyösti Mälkki (kyosti.malkki@gmail.com) gerrit at coreboot.org
Sat Feb 15 13:04:58 CET 2014


Kyösti Mälkki (kyosti.malkki at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5230

-gerrit

commit ded94c0b2a03b00bbdd77a021c3ce0dac0f4bf65
Author: Kyösti Mälkki <kyosti.malkki at gmail.com>
Date:   Sat Feb 15 13:58:01 2014 +0200

    console: Add drivers/uart
    
    Also move UART related Kconfig options from top-level file.
    
    Change-Id: I4e407977cff6f6506f991600c98d6d264676d3f8
    Signed-off-by: Kyösti Mälkki <kyosti.malkki at gmail.com>
---
 src/Kconfig                                    | 14 --------
 src/console/util.c                             |  2 +-
 src/cpu/allwinner/a10/uart_console.c           |  2 +-
 src/cpu/samsung/exynos5250/uart.c              |  2 +-
 src/cpu/samsung/exynos5420/uart.c              |  2 +-
 src/cpu/ti/am335x/uart.c                       |  2 +-
 src/drivers/Kconfig                            |  1 +
 src/drivers/Makefile.inc                       |  1 +
 src/drivers/uart/Kconfig                       | 14 ++++++++
 src/include/console/console.h                  |  2 +-
 src/include/console/uart.h                     |  9 ++++++
 src/include/uart.h                             | 44 --------------------------
 src/include/uart8250.h                         |  3 --
 src/mainboard/cubietech/cubieboard/bootblock.c |  2 +-
 src/mainboard/emulation/qemu-armv7/uart.c      |  2 +-
 src/mainboard/ti/beaglebone/bootblock.c        |  2 +-
 16 files changed, 34 insertions(+), 70 deletions(-)

diff --git a/src/Kconfig b/src/Kconfig
index 94fea2d..bb25afd 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -292,20 +292,6 @@ config MMCONF_SUPPORT
 
 source src/console/Kconfig
 
-# This should default to N and be set by SuperI/O drivers that have an UART
-config HAVE_UART_IO_MAPPED
-	bool
-	default y if ARCH_X86
-	default n if ARCH_ARMV7
-
-config HAVE_UART_MEMORY_MAPPED
-	bool
-	default n
-
-config HAVE_UART_SPECIAL
-	bool
-	default n
-
 config HAVE_ACPI_RESUME
 	bool
 	default n
diff --git a/src/console/util.c b/src/console/util.c
index 405657d..741a0d4 100644
--- a/src/console/util.c
+++ b/src/console/util.c
@@ -16,7 +16,7 @@
  */
 
 #include <console/console.h>
-#include <uart8250.h>
+#include <console/uart.h>
 #if CONFIG_USE_OPTION_TABLE
 #include <option.h>
 #include "option_table.h"
diff --git a/src/cpu/allwinner/a10/uart_console.c b/src/cpu/allwinner/a10/uart_console.c
index 58930dd..94ab7f7 100644
--- a/src/cpu/allwinner/a10/uart_console.c
+++ b/src/cpu/allwinner/a10/uart_console.c
@@ -8,7 +8,7 @@
 
 #include <config.h>
 #include <types.h>
-#include <uart.h>
+#include <console/uart.h>
 #include <arch/io.h>
 
 #include <console/console.h>
diff --git a/src/cpu/samsung/exynos5250/uart.c b/src/cpu/samsung/exynos5250/uart.c
index dbf7202..80e9f4e 100644
--- a/src/cpu/samsung/exynos5250/uart.c
+++ b/src/cpu/samsung/exynos5250/uart.c
@@ -18,7 +18,7 @@
  */
 
 #include <console/console.h>	/* for __console definition */
-#include <uart.h>
+#include <console/uart.h>
 #include <arch/io.h>
 #include "uart.h"
 #include "clk.h"
diff --git a/src/cpu/samsung/exynos5420/uart.c b/src/cpu/samsung/exynos5420/uart.c
index c5c8a8c..ac01488 100644
--- a/src/cpu/samsung/exynos5420/uart.c
+++ b/src/cpu/samsung/exynos5420/uart.c
@@ -18,7 +18,7 @@
  */
 
 #include <console/console.h>	/* for __console definition */
-#include <uart.h>
+#include <console/uart.h>
 #include <arch/io.h>
 #include "uart.h"
 #include "clk.h"
diff --git a/src/cpu/ti/am335x/uart.c b/src/cpu/ti/am335x/uart.c
index bd2ff44..448b1c2 100644
--- a/src/cpu/ti/am335x/uart.c
+++ b/src/cpu/ti/am335x/uart.c
@@ -18,7 +18,7 @@
 
 #include <config.h>
 #include <types.h>
-#include <uart.h>
+#include <console/uart.h>
 #include <arch/io.h>
 
 #include <console/console.h>	/* for __console definition */
diff --git a/src/drivers/Kconfig b/src/drivers/Kconfig
index 8da7b05..01bed21 100644
--- a/src/drivers/Kconfig
+++ b/src/drivers/Kconfig
@@ -37,4 +37,5 @@ source src/drivers/sil/Kconfig
 source src/drivers/spi/Kconfig
 source src/drivers/ti/Kconfig
 source src/drivers/trident/Kconfig
+source src/drivers/uart/Kconfig
 source src/drivers/xpowers/Kconfig
diff --git a/src/drivers/Makefile.inc b/src/drivers/Makefile.inc
index eb86a4c..197a900 100644
--- a/src/drivers/Makefile.inc
+++ b/src/drivers/Makefile.inc
@@ -30,6 +30,7 @@ subdirs-y += parade
 subdirs-y += realtek
 subdirs-y += sil
 subdirs-y += trident
+subdirs-y += uart
 subdirs-y += usb
 subdirs-y += ics
 subdirs-y += spi
diff --git a/src/drivers/uart/Kconfig b/src/drivers/uart/Kconfig
new file mode 100644
index 0000000..c1c3090
--- /dev/null
+++ b/src/drivers/uart/Kconfig
@@ -0,0 +1,14 @@
+# This should default to N and be set by SuperI/O drivers that have an UART
+config HAVE_UART_IO_MAPPED
+	bool
+	depends on !ARCH_ARMV7
+	default y if ARCH_X86
+
+config HAVE_UART_MEMORY_MAPPED
+	bool
+	default n
+
+config HAVE_UART_SPECIAL
+	bool
+	default n
+
diff --git a/src/include/console/console.h b/src/include/console/console.h
index 451a46a..4df8cb6 100644
--- a/src/include/console/console.h
+++ b/src/include/console/console.h
@@ -25,7 +25,7 @@
 #include <console/post_codes.h>
 
 #if CONFIG_CONSOLE_SERIAL
-#include <uart.h>
+#include <console/uart.h>
 #endif
 #if CONFIG_USBDEBUG && !defined(__ROMCC__)
 #include <console/usb.h>
diff --git a/src/include/console/uart.h b/src/include/console/uart.h
index c4079b3..6cd3beb 100644
--- a/src/include/console/uart.h
+++ b/src/include/console/uart.h
@@ -20,7 +20,16 @@
 #ifndef CONSOLE_UART_H
 #define CONSOLE_UART_H
 
+void uart_init(void);
+void uart_tx_byte(unsigned char data);
+void uart_tx_flush(void);
+unsigned char uart_rx_byte(void);
+
+
 unsigned uart_divisor(unsigned basefreq);
 unsigned uart_platform_divisor(void);
 
+
+uint32_t uartmem_getbaseaddr(void);
+
 #endif /* CONSOLE_UART_H */
diff --git a/src/include/uart.h b/src/include/uart.h
deleted file mode 100644
index 9601bfa..0000000
--- a/src/include/uart.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2012 The ChromiumOS Authors.  All rights reserved.
- *
- * 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; version 2 of the License.
- *
- * 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/* madness. Uarts are a mess. If you include this file, it
- * includes ALL uart implementations which may be needed.
- * No need to include them separately, and include this file FIRST.
- * At least one (but at most one) of the files needs to define
- * uart_init().
- */
-#ifndef UART_H
-#define UART_H
-
-#if CONFIG_CONSOLE_SERIAL8250 || CONFIG_CONSOLE_SERIAL8250MEM
-#include <uart8250.h>
-#endif
-
-#if CONFIG_CONSOLE_SERIAL_UART
-unsigned char uart_rx_byte(void);
-void uart_tx_byte(unsigned char data);
-void uart_tx_flush(void);
-void uart_init(void);
-#endif
-
-#if CONFIG_HAVE_UART_MEMORY_MAPPED
-uint32_t uartmem_getbaseaddr(void);
-#endif
-
-#endif /* UART_H */
diff --git a/src/include/uart8250.h b/src/include/uart8250.h
index 996a854..598cdfa 100644
--- a/src/include/uart8250.h
+++ b/src/include/uart8250.h
@@ -120,7 +120,6 @@ void uart8250_tx_flush(unsigned base_port);
  * have three different sets of uart code, so it's an improvement.
  */
 void uart8250_init(unsigned base_port, unsigned divisor);
-void uart_init(void);
 #endif
 #if CONFIG_CONSOLE_SERIAL8250MEM
 void uartmem_init(void);
@@ -136,8 +135,6 @@ u32 uart_mem_init(void);
 #if defined(__PRE_RAM__) && CONFIG_DRIVERS_OXFORD_OXPCIE
 /* and special init for OXPCIe based cards */
 extern int oxford_oxpcie_present;
-
-void oxford_init(void);
 #endif
 #endif
 
diff --git a/src/mainboard/cubietech/cubieboard/bootblock.c b/src/mainboard/cubietech/cubieboard/bootblock.c
index 2e5929c..e22c1d8 100644
--- a/src/mainboard/cubietech/cubieboard/bootblock.c
+++ b/src/mainboard/cubietech/cubieboard/bootblock.c
@@ -7,7 +7,7 @@
  */
 
 #include <arch/io.h>
-#include <uart.h>
+#include <console/uart.h>
 #include <console/console.h>
 #include <delay.h>
 #include <cpu/allwinner/a10/gpio.h>
diff --git a/src/mainboard/emulation/qemu-armv7/uart.c b/src/mainboard/emulation/qemu-armv7/uart.c
index dfe5d0a..0be1cf9 100644
--- a/src/mainboard/emulation/qemu-armv7/uart.c
+++ b/src/mainboard/emulation/qemu-armv7/uart.c
@@ -14,7 +14,7 @@
  */
 
 #include <console/console.h>
-#include <uart.h>
+#include <console/uart.h>
 
 #define VEXPRESS_UART0_IO_ADDRESS	(0x10009000)
 
diff --git a/src/mainboard/ti/beaglebone/bootblock.c b/src/mainboard/ti/beaglebone/bootblock.c
index dd46040..9e0a62e 100644
--- a/src/mainboard/ti/beaglebone/bootblock.c
+++ b/src/mainboard/ti/beaglebone/bootblock.c
@@ -19,7 +19,7 @@
 
 #include <arch/io.h>
 #include <types.h>
-#include <uart.h>
+#include <console/uart.h>
 #include <console/console.h>
 #include <cpu/ti/am335x/pinmux.h>
 



More information about the coreboot-gerrit mailing list