[coreboot-gerrit] Patch set updated for coreboot: b19c6c4 console: Add drivers/uart
Kyösti Mälkki (kyosti.malkki@gmail.com)
gerrit at coreboot.org
Sat Feb 15 12:12:50 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 b19c6c4808c40ba972d8c42613a08506120176bd
Author: Kyösti Mälkki <kyosti.malkki at gmail.com>
Date: Fri Feb 14 07:04:09 2014 +0200
console: Add drivers/uart
Also move UART related Kconfigs 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