summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/arm/samsung/exynos/exynos_uart.c (renamed from sys/arm/samsung/exynos/uart.c)9
-rw-r--r--sys/arm/samsung/exynos/exynos_uart.h (renamed from sys/arm/samsung/exynos/uart.h)0
-rw-r--r--sys/arm/samsung/exynos/files.exynos52
3 files changed, 8 insertions, 3 deletions
diff --git a/sys/arm/samsung/exynos/uart.c b/sys/arm/samsung/exynos/exynos_uart.c
index eef99ff..78bc085 100644
--- a/sys/arm/samsung/exynos/uart.c
+++ b/sys/arm/samsung/exynos/exynos_uart.c
@@ -43,7 +43,7 @@ __FBSDID("$FreeBSD$");
#include <dev/uart/uart_cpu.h>
#include <dev/uart/uart_bus.h>
-#include <arm/samsung/exynos/uart.h>
+#include <arm/samsung/exynos/exynos_uart.h>
#include "uart_if.h"
@@ -286,8 +286,13 @@ s3c2410_bus_setsig(struct uart_softc *sc, int sig)
static int
s3c2410_bus_receive(struct uart_softc *sc)
{
+ struct uart_bas *bas;
+
+ bas = &sc->sc_bas;
+ while (bus_space_read_4(bas->bst, bas->bsh,
+ SSCOM_UFSTAT) & UFSTAT_RXCOUNT)
+ uart_rx_put(sc, uart_getreg(&sc->sc_bas, SSCOM_URXH));
- uart_rx_put(sc, uart_getreg(&sc->sc_bas, SSCOM_URXH));
return (0);
}
diff --git a/sys/arm/samsung/exynos/uart.h b/sys/arm/samsung/exynos/exynos_uart.h
index 06afeff1..06afeff1 100644
--- a/sys/arm/samsung/exynos/uart.h
+++ b/sys/arm/samsung/exynos/exynos_uart.h
diff --git a/sys/arm/samsung/exynos/files.exynos5 b/sys/arm/samsung/exynos/files.exynos5
index 134590e..da347e4 100644
--- a/sys/arm/samsung/exynos/files.exynos5
+++ b/sys/arm/samsung/exynos/files.exynos5
@@ -19,7 +19,7 @@ arm/samsung/exynos/exynos5_common.c standard
arm/samsung/exynos/exynos5_machdep.c standard
arm/samsung/exynos/exynos5_combiner.c standard
arm/samsung/exynos/exynos5_pad.c optional gpio
-arm/samsung/exynos/uart.c optional uart
+arm/samsung/exynos/exynos_uart.c optional uart
arm/samsung/exynos/exynos5_ehci.c optional ehci
arm/samsung/exynos/exynos5_fimd.c optional vt
arm/samsung/exynos/exynos5_i2c.c optional iicbus
OpenPOWER on IntegriCloud