summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Kleine-Budde <mkl@pengutronix.de>2013-03-14 18:31:53 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2013-03-15 08:22:21 +0100
commita613c6848f933661af4094796d5b156be2f66cac (patch)
treea7c60ba58fee80e8786de55516b34fe3e5db34f9
parentb304bb0f153caa8047187e613949cdc0969466c1 (diff)
downloadbarebox-a613c6848f933661af4094796d5b156be2f66cac.tar.gz
barebox-a613c6848f933661af4094796d5b156be2f66cac.tar.xz
driver/serial: stm-serial: fix flush
Wait until fifo is empty, not until fifo is not full. Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--drivers/serial/stm-serial.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/serial/stm-serial.c b/drivers/serial/stm-serial.c
index 3968892b8b..e1276bdeb5 100644
--- a/drivers/serial/stm-serial.c
+++ b/drivers/serial/stm-serial.c
@@ -34,6 +34,7 @@
#define UARTDBGDR 0x00
#define UARTDBGFR 0x18
+# define TXFE (1 << 7)
# define TXFF (1 << 5)
# define RXFE (1 << 4)
#define UARTDBGIBRD 0x24
@@ -92,7 +93,7 @@ static void stm_serial_flush(struct console_device *cdev)
struct stm_priv *priv = container_of(cdev, struct stm_priv, cdev);
/* Wait for TX FIFO empty */
- while (readl(priv->base + UARTDBGFR) & TXFF)
+ while (!(readl(priv->base + UARTDBGFR) & TXFE))
;
}