aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <[email protected]>2015-11-03 14:51:08 +0000
committerGreg Kroah-Hartman <[email protected]>2015-12-13 19:59:48 -0800
commit7fe9a5a9d91f0e9ac65c723665bbdf899c3a4a24 (patch)
tree565eaef0132cf37cad0417a02bd8bf21c6e1c378
parentb2a4e24c2efd76a2c25478836fb35951e00d5b52 (diff)
tty: amba-pl011: add helper to detect split LCRH register
Add a helper to detect the split LCRH register found on ST variants. Signed-off-by: Russell King <[email protected]> Reviewed-by: Peter Hurley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
-rw-r--r--drivers/tty/serial/amba-pl011.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
index 0e7f045b8f4f..c9ae0a144f10 100644
--- a/drivers/tty/serial/amba-pl011.c
+++ b/drivers/tty/serial/amba-pl011.c
@@ -1576,10 +1576,15 @@ static int pl011_hwinit(struct uart_port *port)
return 0;
}
+static bool pl011_split_lcrh(const struct uart_amba_port *uap)
+{
+ return uap->lcrh_rx != uap->lcrh_tx;
+}
+
static void pl011_write_lcr_h(struct uart_amba_port *uap, unsigned int lcr_h)
{
pl011_write(lcr_h, uap, uap->lcrh_rx);
- if (uap->lcrh_rx != uap->lcrh_tx) {
+ if (pl011_split_lcrh(uap)) {
int i;
/*
* Wait 10 PCLKs before writing LCRH_TX register,
@@ -1713,7 +1718,7 @@ static void pl011_disable_uart(struct uart_amba_port *uap)
* disable break condition and fifos
*/
pl011_shutdown_channel(uap, uap->lcrh_rx);
- if (uap->lcrh_rx != uap->lcrh_tx)
+ if (pl011_split_lcrh(uap))
pl011_shutdown_channel(uap, uap->lcrh_tx);
}